Latest Zync Log

Help, Tips, and Tricks for deploying GoZync: our "sync" engine for FileMaker Go.
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Tue Jan 08, 2013 1:48 am
Hi and Happy New Year to all...

Can the Zync Logs be tweaked to show a bit more detail? I'm using the 'Pull' method to draw data down from 11 tables which are listed at the top of the log.

It would be great to see the name of each TO being synced within each section of the log if possible.

Thanks
Brian.
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Tue Jan 08, 2013 6:48 am
Hi Brian,

The log is completely customizable, and some of what you want is already there. Here is a log from a multi-table zync where we ran the script "Zync It - This File" (that runs the default sync action for each table). You'll see the tables passed it at the top of the log and then as each table begins you'll see it's name again in the log along with its default action like this: "Running default action for <table occurrence name>: <action>"

Code: Select all
1/7/2013 7:48:49 PM - Started
-------------------------
 Split     Total
0:00:00 - 0:00:00 - Public API Started: Clients
Fittings
FittingsBike
FittingsSnow
FootbedModels
Images
Messages
Models
Settings
Staff
Templates
Tryons File
0:00:00 - 0:00:00 - Connecting to server...
0:00:01 - 0:00:01 - Getting settings from Host...
0:00:00 - 0:00:01 - Running default action for Clients : Round Trip
0:00:00 - 0:00:01 - Assembling the package: Clients
0:00:00 - 0:00:01 - Preparing & sending 0 records: Clients
0:00:00 - 0:00:01 - Completed 0 records: Clients
0:00:00 - 0:00:01 - Processing this device's Inbox on the Host
0:00:01 - 0:00:02 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:02 - Retrieving the Outbox from Host
0:00:00 - 0:00:02 - Processing 1 of 1 packages recd. (3 records)
0:00:01 - 0:00:03 - Looking for records to delete
0:00:00 - 0:00:03 - Record deletion completed
0:00:00 - 0:00:03 - Processing completed
0:00:00 - 0:00:03 - Running default action for Fittings : Round Trip
0:00:00 - 0:00:03 - Assembling the package: Fittings
0:00:00 - 0:00:03 - Preparing & sending 0 records: Fittings
0:00:00 - 0:00:03 - Completed 0 records: Fittings
0:00:00 - 0:00:03 - Processing this device's Inbox on the Host
0:00:02 - 0:00:05 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:05 - Retrieving the Outbox from Host
0:00:00 - 0:00:05 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:05 - Looking for records to delete
0:00:00 - 0:00:05 - Record deletion completed
0:00:00 - 0:00:05 - Processing completed
0:00:00 - 0:00:05 - Running default action for FittingsBike : Round Trip
0:00:00 - 0:00:05 - Assembling the package: FittingsBike
0:00:00 - 0:00:05 - Preparing & sending 0 records: FittingsBike
0:00:00 - 0:00:05 - Completed 0 records: FittingsBike
0:00:00 - 0:00:05 - Processing this device's Inbox on the Host
0:00:02 - 0:00:07 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:07 - Retrieving the Outbox from Host
0:00:00 - 0:00:07 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:07 - Looking for records to delete
0:00:00 - 0:00:07 - Record deletion completed
0:00:00 - 0:00:07 - Processing completed
0:00:01 - 0:00:08 - Running default action for FittingsSnow : Round Trip
0:00:00 - 0:00:08 - Assembling the package: FittingsSnow
0:00:00 - 0:00:08 - Preparing & sending 0 records: FittingsSnow
0:00:00 - 0:00:08 - Completed 0 records: FittingsSnow
0:00:00 - 0:00:08 - Processing this device's Inbox on the Host
0:00:02 - 0:00:10 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:10 - Retrieving the Outbox from Host
0:00:00 - 0:00:10 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:10 - Looking for records to delete
0:00:00 - 0:00:10 - Record deletion completed
0:00:00 - 0:00:10 - Processing completed
0:00:00 - 0:00:10 - Running default action for FootbedModels : Round Trip
0:00:00 - 0:00:10 - Assembling the package: FootbedModels
0:00:00 - 0:00:10 - Preparing & sending 0 records: FootbedModels
0:00:00 - 0:00:10 - Completed 0 records: FootbedModels
0:00:00 - 0:00:10 - Processing this device's Inbox on the Host
0:00:02 - 0:00:12 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:12 - Retrieving the Outbox from Host
0:00:00 - 0:00:12 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:12 - Looking for records to delete
0:00:00 - 0:00:12 - Record deletion completed
0:00:00 - 0:00:12 - Processing completed
0:00:01 - 0:00:13 - Running default action for Images : Round Trip
0:00:00 - 0:00:13 - Assembling the package: Images
0:00:00 - 0:00:13 - Preparing & sending 0 records: Images
0:00:00 - 0:00:13 - Completed 0 records: Images
0:00:00 - 0:00:13 - Processing this device's Inbox on the Host
0:00:02 - 0:00:15 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:15 - Retrieving the Outbox from Host
0:00:00 - 0:00:15 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:15 - Looking for records to delete
0:00:00 - 0:00:15 - Record deletion completed
0:00:00 - 0:00:15 - Processing completed
0:00:00 - 0:00:15 - Running default action for Messages : Round Trip
0:00:00 - 0:00:15 - Assembling the package: Messages
0:00:00 - 0:00:15 - Preparing & sending 0 records: Messages
0:00:00 - 0:00:15 - Completed 0 records: Messages
0:00:00 - 0:00:15 - Processing this device's Inbox on the Host
0:00:03 - 0:00:18 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:18 - Retrieving the Outbox from Host
0:00:00 - 0:00:18 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:18 - Looking for records to delete
0:00:00 - 0:00:18 - Record deletion completed
0:00:00 - 0:00:18 - Processing completed
0:00:00 - 0:00:18 - Running default action for Models : Round Trip
0:00:00 - 0:00:18 - Assembling the package: Models
0:00:00 - 0:00:18 - Preparing & sending 0 records: Models
0:00:01 - 0:00:19 - Completed 0 records: Models
0:00:00 - 0:00:19 - Processing this device's Inbox on the Host
0:00:03 - 0:00:22 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:22 - Retrieving the Outbox from Host
0:00:00 - 0:00:22 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:22 - Looking for records to delete
0:00:00 - 0:00:22 - Record deletion completed
0:00:00 - 0:00:22 - Processing completed
0:00:01 - 0:00:23 - Running default action for Settings : Round Trip
0:00:00 - 0:00:23 - Assembling the package: Settings
0:00:00 - 0:00:23 - Preparing & sending 0 records: Settings
0:00:00 - 0:00:23 - Completed 0 records: Settings
0:00:00 - 0:00:23 - Processing this device's Inbox on the Host
0:00:03 - 0:00:26 - Asking the host for changed records: pulling down.
0:00:01 - 0:00:27 - Retrieving the Outbox from Host
0:00:00 - 0:00:27 - Processing 1 of 1 packages recd. (1 records)
0:00:00 - 0:00:27 - Looking for records to delete
0:00:00 - 0:00:27 - Record deletion completed
0:00:00 - 0:00:27 - Processing completed
0:00:00 - 0:00:27 - Running default action for Staff : Round Trip
0:00:00 - 0:00:27 - Assembling the package: Staff
0:00:00 - 0:00:27 - Preparing & sending 0 records: Staff
0:00:00 - 0:00:27 - Completed 0 records: Staff
0:00:00 - 0:00:27 - Processing this device's Inbox on the Host
0:00:05 - 0:00:32 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:32 - Retrieving the Outbox from Host
0:00:00 - 0:00:32 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:32 - Looking for records to delete
0:00:00 - 0:00:32 - Record deletion completed
0:00:00 - 0:00:32 - Processing completed
0:00:00 - 0:00:32 - Running default action for Templates : Round Trip
0:00:00 - 0:00:32 - Assembling the package: Templates
0:00:00 - 0:00:32 - Preparing & sending 0 records: Templates
0:00:00 - 0:00:32 - Completed 0 records: Templates
0:00:00 - 0:00:32 - Processing this device's Inbox on the Host
0:00:05 - 0:00:37 - Asking the host for changed records: pulling down.
0:00:01 - 0:00:38 - Retrieving the Outbox from Host
0:00:00 - 0:00:38 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:38 - Looking for records to delete
0:00:00 - 0:00:38 - Record deletion completed
0:00:00 - 0:00:38 - Processing completed
0:00:00 - 0:00:38 - Running default action for Tryons : Round Trip
0:00:00 - 0:00:38 - Assembling the package: Tryons
0:00:00 - 0:00:38 - Preparing & sending 0 records: Tryons
0:00:00 - 0:00:38 - Completed 0 records: Tryons
0:00:00 - 0:00:38 - Processing this device's Inbox on the Host
0:00:07 - 0:00:45 - Asking the host for changed records: pulling down.
0:00:00 - 0:00:45 - Retrieving the Outbox from Host
0:00:00 - 0:00:45 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:45 - Looking for records to delete
0:00:00 - 0:00:45 - Record deletion completed
0:00:00 - 0:00:45 - Processing completed
0:00:00 - 0:00:45 - Closing GoZyncMobile
0:00:00 - 0:00:45 - Public API Ended: Tryons Round Trip
0:08:58 - 0:09:43 - Closing GoZyncMobile


You can add whatever else you'd like to the log. Here's how.

In any script, set a variable $NoResult to the custom function "gz_Timer_Split" and pass into the function whatever you'd like to see in the log. For example, this...

Code: Select all
gz_Timer_Split( "Connecting to server..." )


...adds the phrase "Connecting to server..." to the log and gives it a split time. You can do this in the scripts of both GoZyncMobile and GoZyncHosted.

Not sure which scripts to insert steps into? The log can help there as well: run a sync and then find a phrase in the log you're interested in, like "Looking for records to delete". Then search the scripts of GoZyncMobile / Hosted for that phrase and you'll find exactly where that happens in our scripts. (Turns out "Looking for records..." happens in the script "Delete Records Not In The IDs List (IDs)" in GoZyncMobile.)

If you run a sync with some breakpoints in that script you can use the data viewer to see what other variables you have access to at that point for possible inclusion in your new log message.

Needless to say, this is one of my favorite parts of GoZync: I hope you have fun modding it.

- John
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Wed Jan 09, 2013 12:08 pm
"I hope you have fun modding it" :shock: Maybe if I understood it, maybe ;)

I found the step shown below in the "Zync It - Public API - ( TOName ) { Action ; RecordID }" script:

Set Variable [ $NoResult; Value:gz_Timer_Split( "Running default action for " & $gz_TOName & " : " & $gz_Action ) ]
End If

This looks like it would list the TO and the Action but I'm not sure if my Zync method is using this script or not. How would I check?

Thanks
Brian.
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Wed Jan 09, 2013 4:05 pm
I'm not sure I'm following Brian: you don't edit the script "Zync It - Public API", you simply call that script with the parameters described in the head of that script.

Maybe you can let me know what you're trying to accomplish.
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Thu Jan 10, 2013 12:04 am
Hi John,
I have the following parameter set for this script:

"TOName = Address¶AlarmCo¶Arc¶Client¶Site¶Group¶SyncJoinPeopleSite¶KeySummary¶People¶Police ; Action = Pull"

This lists all the TO's at the start of the Zync log but I would also like to add the TO name to each section along with any other interesting information. Your first reply was way over my head I'm afraid.

Could I duplicate the $NoResult variable in 'any script' and just change the text string? Could I use "TOName" instead of the text string? Also unsure what you mean by 'inserting some breakpoints'...

Thanks
Brian.
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Thu Jan 10, 2013 6:15 am
I was just making two points in my post: one, that you can modify the log, but moreover that the name of each table is already in the log. See the section of the log I pasted in the post above and you'll find the table name "Clients" a the 00:00:01 split time.

Are you not seeing that in your logs?
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Thu Jan 10, 2013 6:41 am
Hi John,
I have the TOs listed at the top of the log but not in each section. The log shown below is from gzMobile on my Mac syncing to a remotely hosted file.

Split Total
0:00:00 - 0:00:00 - Public API Started: Address
AlarmCo
Arc
Client
Site
Group
SyncJoinPeopleSite
KeySummary
People
Police
SiteDetailsForDocuments Pull
0:00:00 - 0:00:00 - Connecting to server...
0:00:03 - 0:00:03 - Getting settings from Host...
0:00:03 - 0:00:06 - Asking the host for changed records: pulling down.
0:00:18 - 0:00:24 - Retrieving the Outbox from Host
0:00:01 - 0:00:25 - Processing 1 of 1 packages recd. (14 records)
0:00:00 - 0:00:25 - Looking for records to delete
0:00:01 - 0:00:26 - Record deletion completed
0:00:01 - 0:00:27 - Processing completed
0:00:01 - 0:00:28 - Asking the host for changed records: pulling down.
0:00:03 - 0:00:31 - Retrieving the Outbox from Host
0:00:00 - 0:00:31 - Processing 1 of 1 packages recd. (2 records)
0:00:00 - 0:00:31 - Looking for records to delete
0:00:00 - 0:00:31 - Record deletion completed
0:00:01 - 0:00:32 - Processing completed
0:00:00 - 0:00:32 - Asking the host for changed records: pulling down.
0:00:03 - 0:00:35 - Retrieving the Outbox from Host
0:00:00 - 0:00:35 - Processing 1 of 1 packages recd. (2 records)
0:00:00 - 0:00:35 - Looking for records to delete
0:00:00 - 0:00:35 - Record deletion completed
0:00:05 - 0:00:40 - Processing completed
0:00:00 - 0:00:40 - Asking the host for changed records: pulling down.
0:00:16 - 0:00:56 - Retrieving the Outbox from Host
0:00:00 - 0:00:56 - Processing 1 of 1 packages recd. (78 records)
0:00:00 - 0:00:56 - Looking for records to delete
0:00:00 - 0:00:56 - Deleting 213 records from "ClientAddress"
0:00:01 - 0:00:57 - Record deletion completed
0:00:01 - 0:00:58 - Processing completed
0:00:01 - 0:00:59 - Asking the host for changed records: pulling down.
0:27:19 - 0:28:18 - Retrieving the Outbox from Host
0:00:00 - 0:28:18 - Asking the host for changed records: pulling down.
0:00:00 - 0:28:18 - Retrieving the Outbox from Host
0:00:01 - 0:28:19 - Asking the host for changed records: pulling down.
0:00:00 - 0:28:19 - Retrieving the Outbox from Host
0:00:00 - 0:28:19 - Asking the host for changed records: pulling down.
0:00:00 - 0:28:19 - Retrieving the Outbox from Host
0:00:00 - 0:28:19 - Asking the host for changed records: pulling down.
0:00:00 - 0:28:19 - Retrieving the Outbox from Host
0:00:01 - 0:28:20 - Asking the host for changed records: pulling down.
0:00:00 - 0:28:20 - Retrieving the Outbox from Host
0:00:00 - 0:28:20 - Asking the host for changed records: pulling down.
0:00:00 - 0:28:20 - Retrieving the Outbox from Host
0:00:00 - 0:28:20 - Closing GoZyncMobile
0:00:00 - 0:28:20 - Public API Ended: SiteDetailsForDocuments Pull
1:40:46 - 2:09:06 - Closing GoZyncMobile

A couple of the TOs are mentioned but not all of them for some reason...

Thanks
Brian.
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Fri Jan 11, 2013 9:17 am
Hey Brian! I thought we were including the TO name in all these messages, but looks like we weren't including the name if you were just pulling. Fortunately this is easy to fix. Edit the script "Pull...." in GoZyncMobile and find the line shown in blue below.

pic.png
pic.png (60.02 KiB) Viewed 15572 times


Change that message to include the TO name like this:

"Asking the host for changed records: " & $TOName & " - pulling down."

Thanks for catching that.

John
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Fri Jan 11, 2013 1:26 pm
Hi John,
Thanks for the script amendment, that seems to work great now.

A quick question:
After prepping and uploading a new file to the device, should I be hitting the 'Reset' button before trying to sync?

I've noticed that if I don't hit 'Reset', then any sync performed after an upload is pretty crappy with lots of missing records...

Thanks
Brian.
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Fri Jan 11, 2013 5:34 pm
You may want to hit reset BEFORE you upload the new file to the host and folks download it. That file has it's last sync time etc. That may or may not make sense depending on what you're really uploading. If you're uploading a recently synced file vs uploading some old offline copy that has the latest schema but not the latest data.

So if hitting reset for you works, that's probably what you need to do, but remember that you can hit reset before you upload to save your users from doing it.
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Sat Jan 12, 2013 3:20 am
Thanks John, uploading a new file always seems to screw up the sync so I'll try a 'Reset' before the prep and upload next time to see if that improves things.

I try to avoid uploading new files and resetting, as the first sync takes ages. I tested this last night and found that a full sync after a 'reset' took 2 hours and 07 minutes. Subsequent syncs take between 6 and 12 minutes which I'm guessing is down to the connection speed. Do these sync timings seem about right for a 260MB file?

Also, could you have a quick look at the sync log below? I added a PDF to the 'SiteDetailsForDocuments' table on my hosted file. This appeared in FM Go correctly but I can't understand why 12 records were deleted in the 'ClientAddress' table. Please see the text shown in red below...

A record was processed/changed in the 'Site' table but I'm not sure why, could it be a gzMod type field that's related to the PDF table?

Thanks
Brian.

1/12/2013 10:43:27 AM - Started
-------------------------
Split Total
0:00:00 - 0:00:00 - Public API Started:

Address
AlarmCo
Arc
Client
Site
Group
SyncJoinPeopleSite
KeySummary
People
Police
SiteDetailsForDocuments

Pull
0:00:00 - 0:00:00 - Connecting to server...
0:00:02 - 0:00:02 - Getting settings from Host...

0:00:04 - 0:00:06 - Asking the host for changed records: Address - pulling down.
0:00:20 - 0:00:26 - Retrieving the Outbox from Host
0:00:01 - 0:00:27 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:27 - Looking for records to delete
0:00:01 - 0:00:28 - Record deletion completed
0:00:00 - 0:00:28 - Processing completed

0:00:02 - 0:00:30 - Asking the host for changed records: AlarmCo - pulling down.
0:00:01 - 0:00:31 - Retrieving the Outbox from Host
0:00:01 - 0:00:32 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:00:32 - Looking for records to delete
0:00:00 - 0:00:32 - Record deletion completed
0:00:00 - 0:00:32 - Processing completed

0:00:02 - 0:00:34 - Asking the host for changed records: Arc - pulling down.
0:00:02 - 0:00:36 - Retrieving the Outbox from Host
0:00:00 - 0:00:36 - Processing 1 of 1 packages recd. (0 records)
0:00:01 - 0:00:37 - Looking for records to delete
0:00:00 - 0:00:37 - Record deletion completed
0:00:00 - 0:00:37 - Processing completed

0:00:02 - 0:00:39 - Asking the host for changed records: Client - pulling down.
0:00:08 - 0:00:47 - Retrieving the Outbox from Host
0:00:00 - 0:00:47 - Processing 1 of 1 packages recd. (0 records)
0:00:01 - 0:00:48 - Looking for records to delete
0:00:01 - 0:00:49 - Deleting 12 records from "ClientAddress"
0:00:00 - 0:00:49 - Record deletion completed
0:00:00 - 0:00:49 - Processing completed

0:00:02 - 0:00:51 - Asking the host for changed records: Site - pulling down.
0:04:07 - 0:04:58 - Retrieving the Outbox from Host
0:00:01 - 0:04:59 - Processing 1 of 1 packages recd. (1 records)
0:00:00 - 0:04:59 - Looking for records to delete
0:00:21 - 0:05:20 - Record deletion completed
0:00:03 - 0:05:23 - Processing completed

0:00:02 - 0:05:25 - Asking the host for changed records: Group - pulling down.
0:00:02 - 0:05:27 - Retrieving the Outbox from Host
0:00:01 - 0:05:28 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:05:28 - Looking for records to delete
0:00:00 - 0:05:28 - Record deletion completed
0:00:00 - 0:05:28 - Processing completed

0:00:02 - 0:05:30 - Asking the host for changed records: SyncJoinPeopleSite - pulling down.
0:00:04 - 0:05:34 - Retrieving the Outbox from Host
0:00:00 - 0:05:34 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:05:34 - Looking for records to delete
0:00:03 - 0:05:37 - Record deletion completed
0:00:00 - 0:05:37 - Processing completed

0:00:02 - 0:05:39 - Asking the host for changed records: KeySummary - pulling down.
0:00:01 - 0:05:40 - Retrieving the Outbox from Host
0:00:01 - 0:05:41 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:05:41 - Looking for records to delete
0:00:02 - 0:05:43 - Record deletion completed
0:00:00 - 0:05:43 - Processing completed

0:00:02 - 0:05:45 - Asking the host for changed records: People - pulling down.
0:00:03 - 0:05:48 - Retrieving the Outbox from Host
0:00:00 - 0:05:48 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:05:48 - Looking for records to delete
0:00:02 - 0:05:50 - Record deletion completed
0:00:00 - 0:05:50 - Processing completed

0:00:02 - 0:05:52 - Asking the host for changed records: Police - pulling down.
0:00:01 - 0:05:53 - Retrieving the Outbox from Host
0:00:01 - 0:05:54 - Processing 1 of 1 packages recd. (0 records)
0:00:00 - 0:05:54 - Looking for records to delete
0:00:00 - 0:05:54 - Record deletion completed
0:00:00 - 0:05:54 - Processing completed

0:00:03 - 0:05:57 - Asking the host for changed records: SiteDetailsForDocuments - pulling down.
0:00:13 - 0:06:10 - Retrieving the Outbox from Host
0:00:01 - 0:06:11 - Processing 1 of 1 packages recd. (1 records)
0:00:01 - 0:06:12 - Looking for records to delete
0:00:01 - 0:06:13 - Record deletion completed
0:00:01 - 0:06:14 - Processing completed

0:00:03 - 0:06:17 - Closing GoZyncMobile
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Sat Jan 12, 2013 8:40 am
Sure Brian...

Deletes are done when any records still on the iPad are not found in the list of IDs that should be on the iPad. This is how GoZync passes deletes down to the iPad and how it removes records that may no longer belong to you: if, say, an order was closed and you're only pulling down "active" orders. More on how we do deletes here: http://www.seedcode.com/pmwiki/pmwiki.p ... c3.Deletes

"Processing 1 of 1 packages recd. (1 records)" means one record was created or modified since last sync.

As for the speed: there is a big difference between the first sync and subsequent syncs but for the difference to be that great I imagine you have field-level-merge turned on. Consider turning this off for most tables. You can learn more about the sweet spot where field-level-merge works best in these two articles:

http://www.seedcode.com/pmwiki/pmwiki.p ... LevelMerge

http://www.seedcode.com/pmwiki/pmwiki.p ... ync3.Speed

Best,

John
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Sat Jan 12, 2013 9:23 am
Thanks John, I've read the 'Deletes' link but it seems like something odd might be happening. The remotely hosted file isn't being changed at all yet each subsequent sync deletes at least one record somewhere.

This suggests that there wasn't an exact match between FM Go and the remote file after the last sync. Does that sound possible?

I checked the FLM settings and this has been turned off for 10 out of the 11 tables I'm syncing. It's set to on for the 'SiteDetailsForDocuments' table as this contains PDFs and rarely changes.

260MB doesn't seem huge to me but I'm not sure why the initial sync after a reset takes so long...

Thanks
Brian.
SeedCode Staff
SeedCode Staff
Posts: 2764
Joined: Thu Nov 20, 2003 11:01 am
PostPosted: Sat Jan 12, 2013 10:15 am
Just depends how many records you need to sync; that speed article talks about strategies to speed up the sync, foremost among them is only syncing the data each user needs (pulling down just "my" records, or "my records for today").

Good news on field level merge.

On the deletes, sounds like you know what the mechanics are. If you'd like me to take a look at the files, just email me and I'll send you instructions for getting them to us.
John Sindelar
SeedCode
Posts: 142
Joined: Thu Nov 01, 2012 2:36 pm
PostPosted: Sun Jan 13, 2013 12:56 pm
Individual user data doesn't apply to our file, as each user needs to pull down all customer records. This may change in the future if we grow large enough to start splitting areas up in to 3 or more sub-areas.

Thanks for offering to look at the files, the iPad is going live tomorrow with our team so I'll try to keep an eye on each daily sync to see if I spot anything odd. Their file on the iPad is local and 'read only' so no damage can be done to our hosted data if any mistakes are made...

Thanks
Brian.
Next

Return to GoZync

Who is online

Users browsing this forum: No registered users and 2 guests

cron
(855) SEEDCODE
[email protected]
Follow us: