I'm wondering what would cause an ultralite database to grow consistently. For instance, if we had a table that we were synchronizing with and the on the select on the server requested the same 2000 rows each time, would that cause the UDB to grow? Let's say you had a simple punch clock application and part of the client functionality was to allow them to see their timesheets for the prior 30 days. If you were to set up a download cursor that simply selected all their punches for the 30 day period without checking to see if they needed to go down, would that cause the UDB to grow? If you downloaded the exact same 2000 rows each time but nothing was changing in the rows being downloaded, would that grow the UDB? We are seeing our UDB grow by 200K on synchronizations of the exact same data. All I can think of that would cause this is that it is because we bring down the same rows every time and the ultalite DB does some sort of delete and insert of the same rows causing it to grow? Has anyone seen this sort of behavior out of Ultralite?

asked 25 Oct '12, 15:29

Codecranker's gravatar image

Codecranker
391192228
accept rate: 0%


Since you said UDB I will assume that this is an Android question.

Although for the first couple of synchronizations I would expect the database to grow so it had working room but after that I would expect it to stabilize. The first sync would insert the rows, the second sync would insert all the rows again and delete the old ones (i.e. update), but after that the space of the old rows would be reused. There may be some slight subsequent growth if the rows vary in length considerably (minor fragmentation) but I would expect it to stabilize over time.

How many syncs did you do (more than 3?)?

Do you have any default timestamp or autoincrement columns? Any triggers?

Posting the schema and MobiLink cursors for the table in question would help.

permanent link

answered 25 Oct '12, 15:43

PhilippeBertrand%20_SAP_'s gravatar image

PhilippeBert...
1.4k41733
accept rate: 21%

Thanks for the answer - after I posted, I thought I should have said we were using UltraliteJ. We did about 7 synchronizations. I am going to run some other tests to see what could be causing this but you are suggesting that if you download the same rows each time, you should not see it grow after a few syncs correct? Thanks!

(25 Oct '12, 15:54) Codecranker
Replies hidden

UltraLiteJ on Android vs UltraLiteJ on BlackBerry - correct?

(30 Oct '12, 09:03) PhilippeBert...

We really need to confirm what platform you are working on (BlackBerry, Android, J2SE?). Also version and build number of UltraLite would help.

(31 Oct '12, 10:28) PhilippeBert...
Your answer
toggle preview

Follow this question

By Email:

Once you sign in you will be able to subscribe for any updates here

By RSS:

Answers

Answers and Comments

Markdown Basics

  • *italic* or _italic_
  • **bold** or __bold__
  • link:[text](http://url.com/ "title")
  • image?![alt text](/path/img.jpg "title")
  • numbered list: 1. Foo 2. Bar
  • to add a line break simply add two spaces to where you would like the new line to be.
  • basic HTML tags are also supported

Question tags:

×60

question asked: 25 Oct '12, 15:29

question was seen: 851 times

last updated: 31 Oct '12, 10:28