drh
aed2460877
Honor the SQLITE_OPEN_READONLY flag even on a :memory: or temporary database,
...
even though such a database is pointless. Ticket #3908 . (CVS 6748)
FossilOrigin-Name: 73ba841ac1ed39fb09b3917bafe0ce349e88eb04
2009-06-11 17:32:45 +00:00
drh
85d2bd22f1
Changes to reenable codec operation and to handle memory allocation
...
failures within a codec. (CVS 6746)
FossilOrigin-Name: 43a6ca98b1a6aff1f0f674ecabdc929efb314db7
2009-06-11 00:47:20 +00:00
drh
e98c9049a0
Further reductions in the amount of stack space required. (CVS 6707)
...
FossilOrigin-Name: 04bad9eb6dd8bf7cafc9f3918b676e95d5b1c984
2009-06-02 21:31:38 +00:00
drh
9fe769f129
Still more refinements to the hasHotJournal() fix of ticket #3883 . (CVS 6689)
...
FossilOrigin-Name: 726b425e43e5d864e7e83853bdf134debc1ffb59
2009-05-29 11:57:38 +00:00
drh
cc0acb261e
The hasHotJournal() fix of check-in (6687) causes some minor problems in
...
various alternative operating modes, such as locking_mode=EXCLUSIVE. This
additional patch attempts to fix those concerns. Ticket #3883 . (CVS 6688)
FossilOrigin-Name: a2ba61d927a06c390a9a818a013328092b802222
2009-05-29 10:55:29 +00:00
drh
f0039ad815
Modify the hasHotJournal() routine to return a false-positive if it is
...
unable to open the journal file to check its header due to a race
condition. Processing downstream of hasHotJournal() already knows how to
deal with false-positives. Ticket #3883 . (CVS 6687)
FossilOrigin-Name: d6b5d8e1ab8e5d3348ace560230702718a2a8af9
2009-05-29 00:30:30 +00:00
danielk1977
e70f4f6482
When locking a database file, check if any backup objects need to be restarted even if the page cache is empty. Ticket #3858 . (CVS 6632)
...
FossilOrigin-Name: 90309008c35494c7a075fe76f7eb96b09a01d01b
2009-05-13 07:52:06 +00:00
shane
60a4b53823
Changes to silence compiler warnings under MSVC. (CVS 6613)
...
FossilOrigin-Name: df599237e1ca8b4f361477a712cf761aa1fac3df
2009-05-06 18:57:09 +00:00
danielk1977
f9d1a21421
Fix a problem with in-memory sub-journals and exclusive locking mode. Also a test script problem introduced by (6575). (CVS 6580)
...
FossilOrigin-Name: d67af3f5a21329e133aa6cf2be745a9f8c1a6562
2009-04-30 16:41:00 +00:00
danielk1977
d829335e42
When SQLite is configured to use in-memory temp files (either by setting SQLITE_TEMP_STORE during compilation or using the temp_store pragma at run time), store statement/savepoint journals in memory also. Ticket #3825 . (CVS 6575)
...
FossilOrigin-Name: 38f8c5a14cd221af9e115a0fea689f2ff39e30e5
2009-04-30 09:10:37 +00:00
danielk1977
f761f76262
Avoid changing the pager journal-mode once a write-transaction is open, even if no database pages have been modified. (CVS 6554)
...
FossilOrigin-Name: ad8aba3eff90d42b936e3644f10cbbd431eebad8
2009-04-28 05:27:20 +00:00
drh
8a93919082
Change the journal_mode pragma so that it always returns the current
...
journal mode, even on a failed attempt to change the journal mode.
Allow the journal mode to be changed as long as there is not a pending
transaction. Ticket #3811 . (CVS 6526)
FossilOrigin-Name: 419e320ae51639794335d19699f8e1189e524e7d
2009-04-20 17:43:03 +00:00
drh
59813953a3
Speed improvements by avoiding unnecessary calls to fstat() and ftruncate(). (CVS 6522)
...
FossilOrigin-Name: 5b7e3a411a6f2fe296675de9467783f6625cff3f
2009-04-20 11:34:26 +00:00
drh
66fd216045
Fix an obscure problem with recovery from I/O errors while rolling back. (CVS 6498)
...
FossilOrigin-Name: 24ff486125b9ad62dd92314b62299093b55fe82b
2009-04-11 16:27:49 +00:00
danielk1977
be20e8eccb
In sqlite3PagerMovepage(), avoid holding a reference to page number X when calling sqlite3PcacheRekey() to move another page to page number X. (CVS 6492)
...
FossilOrigin-Name: 4447c94f45b8abd833eb82b67233029088fd1a54
2009-04-11 09:51:55 +00:00
drh
ea598cbd8d
Additional code to make sure and to assert that memory allocations have
...
8-byte alignment. Ticket #3777 . (CVS 6450)
FossilOrigin-Name: 208382e032134d9c78fe1cfcb98ce9defb4e3e26
2009-04-05 12:22:08 +00:00
drh
5d73854b27
Allow the journal_mode for in-memory databases to be either OFF or MEMORY,
...
not just MEMORY. (CVS 6448)
FossilOrigin-Name: 11c77f4c2c2beee5267ea6e2f1a4bb845531b42c
2009-04-04 15:53:47 +00:00
drh
86655a1d2a
Make sure a ROLLBACK that follows an incremental vacuum works. Ticket #3761 . (CVS 6416)
...
FossilOrigin-Name: 8c1d0c6ad9646816eb8ca15b7df4e79b9b1b59ee
2009-03-31 02:54:40 +00:00
danielk1977
ac86169fff
The fix in (6395) was not correct. Fix #3756 a different way. (CVS 6397)
...
FossilOrigin-Name: 9278f7b1e1f2d0d4c2f8829ca801a769e512c2a6
2009-03-28 10:54:22 +00:00
danielk1977
546820e321
Fix readDbPage() so that if an SQLITE_IOERR_SHORT_READ is encountered, the page content is zeroed. Ticket #3756 . (CVS 6395)
...
FossilOrigin-Name: 647e3b156e32e37debd60b0079fc5a52bdc9b8c8
2009-03-28 06:59:41 +00:00
danielk1977
ee8b799d47
Check that the first byte of a potentially hot journal file is non-zero before beginning hot-journal rollback. Fix for #3751 and #3745 . (CVS 6390)
...
FossilOrigin-Name: 80241a050296067937d0b0529fdf0c347358f86c
2009-03-26 17:13:06 +00:00
danielk1977
bc73971db6
Use the ROUND8() macro to round an integer up to the nearest multiple of 8 and ROUNDDOWN8() macro to round down to the nearest multiple of 8. This is a cosmetic change. (CVS 6372)
...
FossilOrigin-Name: db1d4d2f5083adf5438c7f387b115180800e7bd9
2009-03-23 04:33:32 +00:00
shane
be21779385
Corrected typos and misspellings. Ticket #3702 . (CVS 6336)
...
FossilOrigin-Name: 6404afa0c515a6536fc2e878d4fb451e4dc06942
2009-03-05 04:20:31 +00:00
danielk1977
f37adcb40f
Initialize an uninitialized buffer to silence a valgrind warning during a VACUUM operation. (CVS 6297)
...
FossilOrigin-Name: 8c61968b33dd753618589cb3f859984223161d64
2009-02-17 17:56:30 +00:00
drh
e8df800d4c
Make sure result variables are initialized or unused following a failure
...
of the xFullPathname VFS interface. Problem detected by valgrind. (CVS 6295)
FossilOrigin-Name: 59a4755185f0e51699cd020ae67d279bee45de1c
2009-02-17 16:17:01 +00:00
danielk1977
f2a79f2248
Fix some edge cases with backing up databases that are exactly PENDING_BYTE bytes in size, or just slightly larger. (CVS 6288)
...
FossilOrigin-Name: 2fc450e8e60248d6111d0b0d2b8f2344f5b89bca
2009-02-12 17:01:49 +00:00
danielk1977
f7f33fb08a
Fix a case where during a rollback triggered by an IO or malloc error an unjournalled region of the database could be written to (with it's original data). This was causing an assert in test_journal.c to fail. Add a test case in ioerr2.test to trigger this case. (CVS 6286)
...
FossilOrigin-Name: 315a6692f9a03a470871cce4f74567683546f343
2009-02-12 09:11:56 +00:00
drh
9e7ba7c69a
If the truncate operation fails in journalmode=TRUNCATE, do not fall back
...
to overwriting the journal header with zeros. Simply fail the operation. (CVS 6257)
FossilOrigin-Name: d4af60e52a12262ad0194908e68a386c719fe177
2009-02-04 19:16:23 +00:00
danielk1977
651a52fac2
Do not attempt to use the sub-journal file descriptor if it is not opened (as in journal_mode=off mode). Ticket #3636 . (CVS 6252)
...
FossilOrigin-Name: 20bd76055463c85f62a450e368f4bcf7d2215f94
2009-02-04 10:09:04 +00:00
shane
63207ab262
Remove compiler warnings under MSVC. (CVS 6249)
...
FossilOrigin-Name: 6301f08a2b32289a49c4af994f2770318c444b49
2009-02-04 01:49:30 +00:00
drh
d3a5c50ec7
Correction to check-ins (6246) and (6247): The backup object might not
...
hold a valid destination connection pointer. Also, do not reset the
page cache when establishing a read-lock while there is a persistent
or truncated journal, only if there is a journal that really needs to
rollback. Otherwise backups always reset whenever the source database
file is read. (CVS 6248)
FossilOrigin-Name: 7f827ba9d7af2dfe44aed386b4407716c85daf5e
2009-02-03 22:51:06 +00:00
danielk1977
0410302e58
Commit first version of the 'backup' feature. (CVS 6241)
...
FossilOrigin-Name: 663479b417fc06ba1790a544f28694f8797cee57
2009-02-03 16:51:24 +00:00
danielk1977
64beba4338
Avoid a segfault when running vacuum on an in-memory database. Ticket #3620 . (CVS 6221)
...
FossilOrigin-Name: 407830c6839a81fa0a1010940740df3011713a88
2009-01-31 14:54:06 +00:00
shane
d87897dfa2
Minor changes to remove a few MSVC compiler warnings at /W3. Ticket #3610 . (CVS 6215)
...
FossilOrigin-Name: c74c78e4eb7f6d674b7564b33387db996fbe5725
2009-01-30 05:40:27 +00:00
drh
dc86e2b2cd
Fix some minor compiler warnings. Added sqlite3Isalpha() for use in
...
the soundex() function. (CVS 6203)
FossilOrigin-Name: bfc71edca471221add6b32b867d0b15171974eaf
2009-01-24 11:30:42 +00:00
danielk1977
e1fd508a28
Optimization: When loading a new page into the cache, avoid redundant memset() calls to zero it. (CVS 6201)
...
FossilOrigin-Name: 9c0b9f881367871105965d4268e2f2cde7f4d884
2009-01-23 16:45:00 +00:00
danielk1977
859546cae6
Silence a C++ builder warning by writing "if( (rc = function())!=SQLITE_OK )" instead of "if( (rc = function()) )" in two places in pager.c. Ticket #3605 . (CVS 6199)
...
FossilOrigin-Name: 78ae96def54026461c0d03a90394480f724ea584
2009-01-22 17:12:39 +00:00
danielk1977
bea2a94850
Big change to make pager.c easier to follow. Unused variables removed, comments improved, etc. (CVS 6197)
...
FossilOrigin-Name: 12f7346c13c180ed73d7a2e3b590be457360254a
2009-01-20 17:06:27 +00:00
danielk1977
3cfe07037f
Fix a bug that was preventing SQLite from releasing locks properly under obscure circumstances. (CVS 6192)
...
FossilOrigin-Name: 502c66df8b5fc5ec8e3d94202030571a4920fb9c
2009-01-17 16:59:40 +00:00
danielk1977
db3403973c
Fix a change-counter bug similar to #3584 . This one is much more obscure though, requiring a transient IO or malloc error to occur while running in exclusive mode. (CVS 6189)
...
FossilOrigin-Name: 9f07d2d9226b73c4dc311fd142e0aaba4ffcb078
2009-01-16 16:40:14 +00:00
danielk1977
45d6882fd9
Revert (6187). (CVS 6188)
...
FossilOrigin-Name: a353c1ab376b159c4d12532412365318cdbdcc60
2009-01-16 16:23:38 +00:00
danielk1977
443c0597fe
This commit is an error. Reverted by (6188). (CVS 6187)
...
FossilOrigin-Name: aa67fd0cdb4f53a0c6e15c001d37554d15006718
2009-01-16 15:21:05 +00:00
drh
8f941bc7a1
Add asserts to detect if a transaction commits without first incrementing
...
the transaction counter. These asserts are intended to prevent future
problems similar to ticket #3584 . (CVS 6179)
FossilOrigin-Name: b676ccfd9019e65b52251332d94de1b3018ec823
2009-01-14 23:03:40 +00:00
danielk1977
104f1fef2d
Fix a problem with committing a transaction while there are other active statements. Sometimes, the database change counter was not being updated. (CVS 6176)
...
FossilOrigin-Name: b7d2a477aa2c3dbbb81d18fba1faa6835711b5c3
2009-01-14 17:45:57 +00:00
danielk1977
5f2d46b313
If the journal file is open when unlocking the database, close it just before unlocking the database file instead of just after. This may fix #3572 . (CVS 6171)
...
FossilOrigin-Name: 36fe9a7a51b5279f1a3964139aa636e81f9c8b06
2009-01-13 16:03:44 +00:00
drh
c0731c9d10
Fix an assert() so that it works correctly with SQLITE_TEMP_STORE=3. (CVS 6167)
...
FossilOrigin-Name: fd2bbcf8d8d03eecd4614636ae787331a8e99816
2009-01-11 17:00:02 +00:00
danielk1977
02983931eb
Remove the unused Pager.alwaysRollback flag. Fix a couple of comments in pager.c. (CVS 6161)
...
FossilOrigin-Name: 8f0672af8d7d46124d01e540eec7b43fc16dd552
2009-01-10 17:57:48 +00:00
drh
ceb92adb9d
Remove an faulty assertion inserted a few days ago. (CVS 6160)
...
FossilOrigin-Name: 495f017e03f32420e6a6a7685125a86929cef142
2009-01-10 17:02:02 +00:00
danielk1977
7cbd589da0
Improve coverage of pager.c. (CVS 6158)
...
FossilOrigin-Name: 855c4093cf331496d9ef508011ad814e91e3882f
2009-01-10 16:15:09 +00:00
danielk1977
0371f1b243
Increase pager.c coverage a bit. Fix an assert failure that can occur following a "PRAGMA omit_readlock" command on a read-only database. (CVS 6152)
...
FossilOrigin-Name: 0f3f9011fa143f7b63c9bf79d3e411327d5c6f9d
2009-01-09 17:11:04 +00:00