On 01/02/2013 10:04 AM, Dan Kennedy wrote:
What series of commands did you pass to 3.7.5 to create
this file?
This file was copied from an existing product which uses QT 4.7 libraries to populate the database. I cannot reproduce the exact commands which resulted in this file, because it is populated dynamically by the
software.

I found out that QT 4.7 is using the 3.6.19 SQLite library. The databases were created using the 3.7.5 version, so you were right about this. The database is created with a 3.7.5 version and populated with 3.6.19

Perhaps there is a bug in 3.7.5 causing this. What happens
if you use 3.7.15 to create the original and do the backup?
I have recreated the database using a dump from the original database. I have created database using this dump with both 3.7.5 (on a ARM9 platform) and 3.7.15.1 (on Intel). To my surprise this resulted in quite different files. The one created with 3.7.5 is 125952 bytes in size, the 3.7.15.1 is 116736 bytes in size.

These are the first 100 bytes in hex of both files:

3.7.5:
0000000 5153 694c 6574 6620 726f 616d 2074 0033
0000010 0004 0101 4000 2020 0000 0100 0000 7b00
0000020 0000 0000 0000 0000 0000 0300 0000 0100
0000030 0000 0000 0000 0000 0000 0100 0000 0000
0000040 0000 0000 0000 0000 0000 0000 0000 0000
0000050 0000 0000 0000 0000 0000 0000 0000 0100
0000060 2d00 1de2 000d 0000 0004 00e3 7202 2002
0000070 7301 e300 0000 0000 0000 0000 0000 0000
0000080 0000 0000 0000 0000 0000 0000 0000 0000

3.7.15.1:
0000000 5153 694c 6574 6620 726f 616d 2074 0033
0000010 0004 0101 4000 2020 0000 0100 0000 7200
0000020 0000 0000 0000 0000 0000 0300 0000 0400
0000030 0000 0000 0000 0000 0000 0100 0000 0000
0000040 0000 0000 0000 0000 0000 0000 0000 0000
0000050 0000 0000 0000 0000 0000 0000 0000 0100
0000060 2d00 27e2 000d 0000 0004 00e3 7202 2002
0000070 7301 e300 0000 0000 0000 0000 0000 0000
0000080 0000 0000 0000 0000 0000 0000 0000 0000

The created database files are both different from the one created with the .backup command. Both are reporting 'ok' with 'pragma integrity_check;'. The one created with .backup report errors:

*** in database main ***
Main freelist: invalid page number 151
On tree page 10 cell 10: invalid page number 154
On tree page 10 cell 10: Child page depth differs
On tree page 10 cell 11: invalid page number 145
On tree page 10 cell 12: Child page depth differs
On tree page 10 cell 13: invalid page number 120
On tree page 10 cell 13: Child page depth differs
On tree page 10 cell 14: invalid page number 121
On tree page 10 cell 15: invalid page number 152
On tree page 10 cell 16: Child page depth differs
On tree page 10 cell 18: invalid page number 157
On tree page 10 cell 18: Child page depth differs
On tree page 10 cell 19: invalid page number 153
On tree page 10 cell 20: Child page depth differs
On tree page 10 cell 21: invalid page number 141
On tree page 10 cell 21: Child page depth differs
On tree page 10 cell 22: Child page depth differs
On tree page 10 cell 53: invalid page number 132
On tree page 10 cell 53: Child page depth differs
On tree page 10 cell 54: Child page depth differs
On tree page 11 cell 0: invalid page number 143
On tree page 11 cell 1: invalid page number 129
On tree page 11 cell 2: Child page depth differs
On tree page 11 cell 4: invalid page number 125
On tree page 11 cell 4: Child page depth differs
On tree page 11 cell 5: Child page depth differs
On tree page 11 cell 9: invalid page number 122
On tree page 11 cell 9: Child page depth differs
On tree page 11 cell 10: Child page depth differs
On tree page 11 cell 11: invalid page number 119
On tree page 11 cell 11: Child page depth differs
On tree page 11 cell 12: Child page depth differs
On tree page 11 cell 18: invalid page number 128
On tree page 11 cell 18: Child page depth differs
On tree page 11 cell 19: invalid page number 149
On tree page 11 cell 20: Child page depth differs
On tree page 11 cell 24: invalid page number 123
On tree page 11 cell 24: Child page depth differs
On tree page 11 cell 25: Child page depth differs
On tree page 11 cell 28: invalid page number 139
On tree page 11 cell 28: Child page depth differs
On tree page 11 cell 29: Child page depth differs
On tree page 11 cell 36: invalid page number 137
On tree page 11 cell 36: Child page depth differs
On tree page 11 cell 37: invalid page number 156
On tree page 11 cell 38: invalid page number 147
On tree page 11 cell 39: invalid page number 146
On tree page 11 cell 40: Child page depth differs
On tree page 11 cell 44: invalid page number 155
On tree page 11 cell 44: Child page depth differs
On tree page 11 cell 45: Child page depth differs
On tree page 11 cell 53: invalid page number 136
On tree page 11 cell 53: Child page depth differs
On tree page 11 cell 54: Child page depth differs
On page 11 at right child: invalid page number 138
Page 32 is never used
Page 41 is never used
Page 46 is never used
Page 48 is never used
Page 51 is never used
Page 53 is never used
Page 54 is never used
Page 55 is never used
Page 58 is never used
Page 65 is never used
Page 66 is never used
Page 68 is never used
Page 73 is never used
Page 82 is never used
Page 89 is never used
Page 91 is never used
Page 93 is never used
Page 98 is never used
Page 99 is never used


--
Regards,
Marco ten Thije
_______________________________________________
sqlite-users mailing list
sqlite-users@sqlite.org
http://sqlite.org:8080/cgi-bin/mailman/listinfo/sqlite-users

Reply via email to