Hi guys, I’m running into some pretty serious issues when registering a new user. I’m running an iOS app, and I had a particular group of custom columns, some of which were Data-Relation fields. This was all working fine when first registering, etc. But then I needed to add some columns and change the schema. I cleared out the column list and deleted them all from the backend, including all existing users to start “fresh”. Then I registered a new user with the new properties being set. And then that’s when I started noticing the issues…
Old columns started appearing that aren’t even now being set in the app, new columns weren’t showing any data, and all columns are being updated with the values set to other properties, etc. I have now reached a state at which I can’t register a user properly at all, even after following these steps:
- Clear all custom columns by deleting them from the backend
- Run the app again with setting all property values properly
- Viewing the backend… I get all kinds of weirdness. The values entered from the app are showing up in the wrong columns. See attached example for reference.
The issue doesn’t seem to be on the app side of things, as the properties are being set properly. It seems to be storing values in the wrong places completely, causing Internal Server Errors. I cannot get a user registration to work anymore due to this.
I thought it was maybe a propagation delay issue due to changing the schema, but I waited about 10 minutes after clearing out the columns, and I still see the same issue. I even see it immediately after refreshing the console following a user registration - the fields are wrong, and then I go into another table and then back to the Users table, and they are even different then. Very strange.
Any thoughts on how to proceed on this? I am willing to help out any way needed, even if it’s live testing, as this is a critical app on which we have to get registration working properly.
Thank you in advance, please let me know how I can debug this or if there’s anything I may be doing wrong from my side (or any further info I can provide). The code for registering a user is pretty straight-forward, and worked fine before. Something like the following:
BackendlessUser *user = [BackendlessUser new];
user.password = self.passwordTextField.text;
[user setProperty:@"email" object:self.emailTextField.text];
[user setProperty:@"name" object:self.nameTextField.text];
[user setProperty:@"phoneNumber" object:self.phoneNumberTextField.text];
[user setProperty:@"photoUrl" object:file.fileURL];
[user setProperty:@"organization" object:organization];
[user setProperty:@"role" object:[self.userRoles objectAtIndex:self.selectedUserRoleIndex]];
[user setProperty:@"userDeviceId" object:[[UIDevice currentDevice].identifierForVendor UUIDString]];
.. setting other fields and code to save:
[backendless.userService registering:user response:^(BackendlessUser *user) {
...etc...