V
Václav Margy Sobotka
Guest
Backstory
I work on the backend for Android clients. There are a lot of data to be displayed and some offline functionality needed, so I have to solve synchronization. Said data consists of temp-tables.
Our solution
Right now, to let the client know about possible changes and not to enforce complete client db wipe and creation (takes a lot of time), I make a hash of each of the temp-table rows. Said hash is created by taking the temp-table row, creating a JSON for it and then making a hash out of that JSON. It is working.
My problems with this solution
I think it is not the ideal solution. All those operations look demanding and from my testing, it shows:
What I want
I am interested if we are doing something wrong. Is there a better solution for this problem? Is there less demanding way for creating hash out of each individual temp-table record?
We are currently using OpenEdge 10.2B.
Continue reading...
I work on the backend for Android clients. There are a lot of data to be displayed and some offline functionality needed, so I have to solve synchronization. Said data consists of temp-tables.
Our solution
Right now, to let the client know about possible changes and not to enforce complete client db wipe and creation (takes a lot of time), I make a hash of each of the temp-table rows. Said hash is created by taking the temp-table row, creating a JSON for it and then making a hash out of that JSON. It is working.
My problems with this solution
I think it is not the ideal solution. All those operations look demanding and from my testing, it shows:
- For each for some data; the base line, no action = 90 ms
- Population a temp-table inside of that for each with buffer-copy = 400 ms
- Calculating hash with the above solution after the population inside the for each = 2 880 ms
What I want
I am interested if we are doing something wrong. Is there a better solution for this problem? Is there less demanding way for creating hash out of each individual temp-table record?
We are currently using OpenEdge 10.2B.
Continue reading...