The Forums on slxdeveloper.com are now retired. The forum archive will remain available for the time being. Thank you for your participation on slxdeveloper.com!
|
|
Create field ReSyncTableDefs.DefaultGlobalIDPath failure on remote(s) (6.2.6)
Posted: 02 May 07 2:47 PM
|
fiogf49gjkf0d A user alerted me to a problem with recently released customizations. Specifically when the user goes to Add or Edit records on a datagrid, it says "Table C_TABLENAME not found" and quits. All data is present in the table because the datagrid is filled as well as Account groups that also pull from the same table. The key indicator of the problem is the line found in SyncErrors.txt:
[5/2/2007 11:49:27 AM] Table C_ACCOUNTCONTRACT does not exist in ResyncTableDefs.
Upon further inspection, it appears that 4 tables aren't included in Resynctabledefs though they have synchronized changes. I traced the problem back to a missing DefaultGlobalIDPath field that was supposed to be included in 6.2 SP3. For some reason this field is on the host but hasn't synchronized to remotes and this means that those 4 rows (created after the SP3 upgrade mind you) weren't synchronizing, likely due to the missing field included in the insert statement on the host.
What's troubling is that I've "upgraded" the SP6 bundle 3 times now and poured through the TEFs looking for anything that looks like a synchronized "Create Field" statement. I get nothing. The best I get is SLXProfiler shows that during the bundle it is looking at the sectabledefs and resynctabledefs. I'm guessing that because the field exists on the host, it's not going to synchronize the change out to remotes.
Here are my questions: 1) Can I use Execute SQL to both add the table to the database as well as add the sectabledefs entry? The fieldindex value is unique on the host, so I should just be able to copy that record and be right as rain. 2) After I "stablize" resynctabledefs, can't I also sync out the 4 missing table records? Resynctabledefs isn't as integral to SLX's well-being as the almighty sectabledefs but I want to make sure sync isn't going to lock the change from taking. 3) Basically I'm scripting a Create Field bundle action using existing values. Adding the column to the table and adding a record to sectabledefs is all this does, correct?
Any help would be greatly appreciated. I held off on what seems like an easy fix simply because of the tables involved. I don't want to create another headache for the future. |
|
|
|
Re: Create field ReSyncTableDefs.DefaultGlobalIDPath failure on remote(s) (6.2.6)
Posted: 04 May 07 6:36 AM
|
fiogf49gjkf0d You probably do not want to hear this.. but: The best thing to do is to re-cut the remotes after you are sure the main db is ok.
Attampting to patch meta-data the way you are describing will eventually lead to weird little problems you will fight forever.. sometimes you just have to bite the bullet. -- rjl |
|
|
|
Re: Create field ReSyncTableDefs.DefaultGlobalIDPath failure on remote(s) (6.2.6)
Posted: 04 May 07 11:04 AM
|
fiogf49gjkf0d I haven't checked with EVERY remote, but this seems to be an isolated case. If this is in fact one person's problem, couldn't I just update their database directly? We're talking the addition of a single column and a maximum of 5 rows added. One to sectabledefs including the column, and 4 to resynctabledefs which will allow my customization(s) to work. I'm scheduled to perform our v7 upgrade on Wednesday so I could possibly hold it off until then but my thought was if I could patch it for now, I could fix it officially during the upgrade.
The weird part is that everything is there but because the records are missing in resynctabledefs (yet the data syncs!), the customization won't open. I thought the omission from resynctabledefs keeps data from synchronizing to remotes but my guess is this is a host-only thing where the sync server will generate TEFs and the remote will process them regardless. The only time there is a hint of a problem is the "Cannot locate table" error and SyncErrors entries I mentioned above. |
|
|
|
Re: Create field ReSyncTableDefs.DefaultGlobalIDPath failure on remote(s) (6.2.6)
Posted: 05 May 07 8:42 AM
|
fiogf49gjkf0d As I said.. you are patching meta-data and it's very dangerous.. If it's just a few.. recut them.
Sectabledefs, resynctabledefs, and ALL of the secprofile datablobs are "connected" with each other. Unless you know how each and every column in each and every part of these three tables relate and what they represent.. don't patch. You're goning down a slope....
-- rjl |
|
|
| |
| |
|