Good day, all. I know this subject has been bandied about before, but I really didn't see a good resolution in the threads I was able to review.
Situation: Syncing solution, creating records via a portal. For the most part, it works at a good pace, with the exception of two tables. These are very slow, and I cannot fathom the reason for it.
The algorithm loops over the fields to be updated and uses a series of Set Field commands. (Since this is sync, I have it configured to go field-by-field because field 1 in file A may be going up to file B, but field 2 may be coming down. So you preserve the edits in both directions.) When I look at the log, most of the tables loop over all the fields within a second or a second and a half, meaning you have (roughly) 1 second per record.
However, two of the tables end up being 3/4 of a second or more for each field. This means each record is taking 8 - 9 seconds, which is unacceptable. (Customer is complaining, and basically says it has to be fixed.) It's especially bad when creating records from the mobile device to the hosted file.
There is only one differences I can see in the tables that are taking a long time: They both have a considerably larger number of records in them than the tables that are performing reasonably - about 10,000 - 12,000 vs. a few hundred.
Is there some sort of caching issue here? Remember, this is creating new records. There are a few auto-enter calculations, but they're not different from the auto-enter calcs in the tables that are performing decently. There are some unstored calcs in one of the tables, but not the other. I took out some summary fields that were there, but that didn't seem to help. What else should I be looking to change? Or is the whole create-via-portal thing doomed once the record counts start to climb?