Nuno, I am much surprised that version 3.0.5 helped you. It didn't help me. Neither my nor your port. BUT your remark helped me! You are right that it is because of stack space, and the default setting in Windows CE projects is 0x10000, i.e. 65 kB. After changing to 0x100000, i.e. 1 MB my test program which first added 1000 rows of size 0..2000, than deleted all of them and created 1000 tables works fine. Did you perhaps also change this setting?

Are you going to merge 3.0.6?

Best regards,
Jakub

Nuno Lucas wrote:
Jakub, I must ask you to forgive me as only now noticed you were not the sender of the tracker message for the bug. Sorry for the confusion (I must stop replying messages late at night).

In the code I tested it was always the 113th row because I only created a single table. I would assume it would happen sooner to you because you have several tables created.

It's a little difficult to test your code as it is dependent on other libraries. Could you post just the SQL statements used so we could check it with the new SQLite-wince v3.0.5?

As I don't know the classes you are using I have no way of checking the stack use of them (could they be creating rowsets in the stack, for example?).

Anyway, with the 3.0.5 port, I could now insert 50000 rows without problems. Maybe you could check if my merge is different from yours and if it works now.

Regards,
~Nuno Lucas


Jakub Adamek, dando pulos de alegria, escreveu :

Nuno, I have changed back to SQLite 2 and have my code ready to switch to version 3 again if the bug is repaired. The thing happens when first calling balance_nonroot, which is in your case always on the 113th row, in my case on the 33th row and in the mail message
http://www.mail-archive.com/[EMAIL PROTECTED]/msg03112.html
always at the sixth CREATE TABLE. I did try SQLite 3.0.5 and copied the changes as in SQLite-WinCE with no improvement.


I would agree with too much stack space, which may be perhaps solved by using malloc() and free() in sqlite_nonroot.

Jakub


Reply via email to