1
0
mirror of https://github.com/sqlite/sqlite.git synced 2025-11-15 11:41:13 +03:00
Commit Graph

565 Commits

Author SHA1 Message Date
dan
4d9c1b7fc4 Merge further trunk changes into experimental branch.
FossilOrigin-Name: fb847d70407b0f0e548919b7554f62bc1dab8a6c
2010-07-30 07:26:51 +00:00
drh
df0db0feb5 Change the profile timer units back to nanoseconds and update the
sqlite3_profile() documentation.
Ticket [c43940c49b74c70a69]

FossilOrigin-Name: 7783b98a938b77d6b8e4e85b32b05452c47fbe4b
2010-07-29 10:07:21 +00:00
dan
76d5918243 Merge trunk changes into experimental branch.
FossilOrigin-Name: aa81900153a2762cb2ad41e6710c1f1e7dc8b41e
2010-07-28 18:35:50 +00:00
drh
39539804c6 Lookaside memory is not used to store schemas. Change the
SQLITE_DBSATUS_SCHEMA_USED documentation to reflect this fact.

FossilOrigin-Name: 07abfd5268564c18afd1074c2069d65c64f4b8eb
2010-07-28 15:52:09 +00:00
drh
154a319213 Add documentation for the SQLITE_STATUS_MALLOC_COUNT parameter to
sqlite3_status().

FossilOrigin-Name: dbfbdb60c00b5aeae29c85acec0ae910b82dbdba
2010-07-28 15:49:02 +00:00
dan
502019c8bb Support FCNTL_CHUNK_SIZE on windows too.
FossilOrigin-Name: a038688c991435967b935946c2283707820bb5da
2010-07-28 14:26:17 +00:00
dan
eb8def8449 Merge trunk changes into experimental branch.
FossilOrigin-Name: 621824092d443425c420ba9010bbe1202fe99ea2
2010-07-27 18:36:37 +00:00
dan
6e09d69c92 Add experimental unix-only file-control to grow and truncate the database file by a configurable chunk size.
FossilOrigin-Name: 7cf0e851d4c5e826ea22ed08291b7c91d7b1abc7
2010-07-27 18:34:15 +00:00
drh
eafc43b156 Add the SQLITE_STATUS_MALLOC_COUNT option for sqlite3_status().
FossilOrigin-Name: 8f8e442b3af553753e25c304efa289b626e3a227
2010-07-26 18:43:40 +00:00
drh
643f35e4a6 Update comments to better documentation the new memory measurement functions.
FossilOrigin-Name: 620bad035755449c4e6a762f01ef2b1d9e521c7c
2010-07-26 11:59:40 +00:00
dan
d46def77db Experimental code to measure memory consumed by database schemas and prepared statements.
FossilOrigin-Name: 9aa30342f4de4eff630520ea8e07ad253d3f0877
2010-07-24 11:28:28 +00:00
drh
6ba8e9667c Tweaks to the virtual table documentation contained in comments of sqlite3.h.
No changes to actual code.

FossilOrigin-Name: f5866d4723460e80814b8599e0b84ff4a924da6f
2010-07-22 11:40:34 +00:00
drh
300c18a1b5 Fix a comment typo. This check-in is 3.7.0 release candidate 2.
FossilOrigin-Name: b36b105eab6fd3195f4bfba6cb5cda0f063b7460
2010-07-21 16:16:28 +00:00
dan
ddb0ac4b9f On unix, try to create the *-wal and *-shm files with the same permissions as the associated database file.
FossilOrigin-Name: e5d180eed245437b61bfb257ee01e2571c93afe7
2010-07-14 14:48:58 +00:00
dan
0c1736026a Fix a typo in a comment in sqlite.h.in.
FossilOrigin-Name: 4a6c4b6605ddce59e586ab17024de5269191a823
2010-07-13 18:45:10 +00:00
dan
da9fe0c327 Changes so that the xShmOpen VFS method is no longer required. Its job can be done by the first call to xShmMap. Rename xShmClose to xShmUnmap.
FossilOrigin-Name: f4780bde62c6c19146d2723c101540b8db898d38
2010-07-13 18:44:03 +00:00
drh
2103245e75 Improved documentation for the SQLITE_ACCESS_* constants that are used
with the xAccess() method of the VFS.

FossilOrigin-Name: 3d4bb65f10ed0297f38e732ce57e5440cba8deef
2010-07-13 14:48:27 +00:00
dan
af6ea4e9f9 Add proposed interface change to sqlite.h.in. This commit breaks the build.
FossilOrigin-Name: 52577bb5e723d8de4fc609286666b581f8d9c746
2010-07-13 14:33:48 +00:00
drh
2667be5e3f Remove the unused xRename() method from the sqlite3_vfs object.
Add better documentation on the xCurrentTimeInt64() method.

FossilOrigin-Name: 51ec0e5432dd6849b83a3d969a018482eb3bb083
2010-07-03 17:13:31 +00:00
dan
8ce49d6ac0 Change the name of IOCAP_SAFE_DELETE to IOCAP_UNDELETABLE_WHEN_OPEN. Have the xDeviceCharacteristics() method of the win32 VFS return this flag.
FossilOrigin-Name: 5a5ff4e3e4c707464f227907d0aefb8ef42180dd
2010-06-19 18:12:02 +00:00
dan
2a321c7547 Experimental change: On systems where it is not possible to unlink a file while one or more processes has it open (i.e. not unix), avoid closing the journal file each time the database is unlocked and reopening it at the start of each transaction.
FossilOrigin-Name: bede8c8a148fb9be5ffbf38df7fa733e35cc68c3
2010-06-16 19:04:23 +00:00
drh
cc3af5156e Minor tweaks to the interface documentation - adding hyperlinks.
FossilOrigin-Name: 07b2fdd1cebbdbde5098a662eea65a0c9e8b5442
2010-06-15 12:09:06 +00:00
drh
6b017cc6d4 Move the xShmMap method to in between xShmLock and xShmBarrier, since it seems
to fit in there logically.

FossilOrigin-Name: 58dfd83d8b7905391e2a06bb918ffa209c6de6b5
2010-06-14 18:01:46 +00:00
dan
188019153d Remove xShmGet/Size/Release from the sqlite3_vfs structure. Change the name of xShmPage to xShmMap. Remove some code that is now unused from os_unix.c and some of the test VFS implementations.
FossilOrigin-Name: fc0cabc15c97dde6a852b4f07df6d30f1d2c04bc
2010-06-14 14:07:50 +00:00
dan
13a3cb82ce Experimental change to the xShmXXX parts of the VFS interface.
FossilOrigin-Name: ca68472db01c14a899892007d1cbaff5e86ae193
2010-06-11 19:04:21 +00:00
drh
23e35723a7 Add the SQLITE_TESTCTRL_PGHDRSZ verb for sqlite3_test_control() used to get
the size of pcache headers for testing purposes.

FossilOrigin-Name: 5d694f04fecf47ca325e108d463c24f42def55d5
2010-06-10 14:07:40 +00:00
drh
aab4c02e47 Changes to make WAL more robust against SHM locking failures and OOM errors.
FossilOrigin-Name: ebf4041383c3cdddb5861960359abd209d4a1028
2010-06-02 14:45:51 +00:00
drh
8b3cf82ddf The shared-memory used by WAL on linux now really is shared memory in /dev/shm.
On other unix flavors, the file is in a temporary directory rather than in the
same directory as the database.

FossilOrigin-Name: fc18c4aadb908c3b6f9b6481a2efca6a0daadc64
2010-06-01 21:02:51 +00:00
drh
73b64e4d2e Initial code for incremental checkpoint in WAL mode. This check-in compiles
on unix and runs as long as you do not engage WAL mode.  WAL mode crashes and
burns.  Consider this check-in a baseline implementation for getting the new
capability up and running.

FossilOrigin-Name: ef3ba7a17ff90674d702e5694b9e792851ab6998
2010-05-30 19:55:15 +00:00
drh
286a288493 Add a new xShmBarrier method to the VFS - a shared-memory fence operation.
Implement the same in both unix and win32.  Use it to make the WAL subsystem
more robust.

FossilOrigin-Name: 1bd011c9fed5ef29fb616b4d0a52df3b82221b1f
2010-05-20 23:51:06 +00:00
drh
9ff27ecdb2 Add the SQLITE_FCNTL_SIZE_HINT operator to sqlite3_file_control() and use it
to give the VFS hints about the ultimate size of a database file when the
file is growing.

FossilOrigin-Name: 2b7e3b4a30d6a7c4a8a4b8e7dd2ed728b565c96d
2010-05-19 19:26:05 +00:00
drh
5939f44375 Mark the shared-memory in the WAL implementation as volatile.
FossilOrigin-Name: 0a6787908e989bd5e6af25acbdc59ebc8fa61d6d
2010-05-18 13:27:12 +00:00
dan
982d4c0c72 Add a note to the documentation of sqlite3_wal_hook() to say not to return SQLITE_ROW or SQLITE_DONE. Or any other value that is not a valid SQLite error code.
FossilOrigin-Name: 2f0b6cbf7b4fa31242ff4f6163226c22ae4f8c9b
2010-05-15 10:24:46 +00:00
drh
d9e5c4f6ed Refactoring the VFS-SHM methods used by WAL. This version compiles and
runs non-WAL test cases but crashes and burns on wal.test.

FossilOrigin-Name: 2b00152c1ac0b3735aa6cfab61259ff04d81c701
2010-05-12 18:01:39 +00:00
drh
6a2607a131 Additional tweaks to API documentation. No functional code changes.
FossilOrigin-Name: e1230782a371f09cd46dacc8ecbc6a0c5baab2d5
2010-05-07 18:23:24 +00:00
drh
005e19c4c1 Updates to documentation on the C interfaces supporting WAL. No functional
changes to code.

FossilOrigin-Name: 681ba20cf077e9a0fccd51ed50101ad0f2c67eb3
2010-05-07 13:57:11 +00:00
drh
5def0843f1 Change the behavior of the sqlite3_wal_hook() callback. It should now return
SQLITE_OK or an error code and the error code is propagated back up the 
stack.  If a checkpoint is desired, the callback should invoke
sqlite3_wal_callback() itself.

FossilOrigin-Name: 1b14195e05fe5551992a39246ec3bcf6a33bbfac
2010-05-05 20:00:25 +00:00
drh
ccd13d1f80 Further simplifications to the SHM locking logic. Remove the SQLITE_SHM_QUERY
option.  Unify the WRITE to READ and RECOVER to READ transitions.

FossilOrigin-Name: e9bfa6e4ce7d1edc6be8b9173ac3b6bfd180632a
2010-05-05 19:09:49 +00:00
drh
3289c5efc8 Prohibit backup if the destination is using WAL and has a different page
size from the source.

FossilOrigin-Name: 7bd44794c482beee16c684712545275e2bf63dfa
2010-05-05 16:23:26 +00:00
drh
324e46d424 Documentation stubs for sqlite3_wal_autocheckpoint and sqlite3_wal_checkpoint.
FossilOrigin-Name: 313762427d96954667909887a797ea996dc6304a
2010-05-03 18:51:41 +00:00
drh
1fbe0f2a8f Change the VFS definition so that all methods take a VFS object pointer as
their first parameter.

FossilOrigin-Name: 43b5b07f0d996d7ef7426346b1792e9ca898f487
2010-05-03 16:30:27 +00:00
dan
11398e5e54 Merge two wal leaves.
FossilOrigin-Name: 23c0e6c3f333e878fe5a2ae5d61df0d765f437b4
2010-05-03 08:19:34 +00:00
dan
586b9c8a94 Add the sqlite3_wal_checkpoint() and sqlite3_wal_autocheckpoint() APIs.
FossilOrigin-Name: 9803196dec85e3aa4105cc477e9cfe98d370e486
2010-05-03 08:04:49 +00:00
drh
2d536e187f Change the SHM interface so that it does not take the name of the shared
object but rather the name of the WAL file and derives its own name from
that.  Remove the xShmDelete method from the VFS and replace it with a
delete flag on xShmClose.

FossilOrigin-Name: 94dea5f9c11a68564220cec76ac3fae2ba90e907
2010-05-01 20:17:30 +00:00
drh
f72a8751c9 Remove the xShmPush and xShmPull methods from the VFS.
FossilOrigin-Name: 69e07fdbde5054593de948b76dfac157cf5d4058
2010-05-01 18:23:08 +00:00
drh
5530b764a8 Separate the concepts of underlying storage size and mapped size in the
VFS shared-memory implementation.

FossilOrigin-Name: 4cbe49f13fed288f94ff305bcfd99df907bf7baf
2010-04-30 14:39:50 +00:00
drh
7ed91f2344 Refactor wal.c to use the VFS. This check-in compiles and links and works
ok as long as you leave WAL turned off, but WAL does not work.

FossilOrigin-Name: 62db5fa3b61be885b2d94e9b9ce3877b2c588350
2010-04-29 22:34:07 +00:00
drh
7b6944047e Progress towards a VFS that will support WAL. Locking code is in place
but is untested.  Still no support for the DMS.

FossilOrigin-Name: 1bde41cf081570ad257f927b641e752dff4ed014
2010-04-29 15:17:48 +00:00
drh
9beb1584bd Changes to the interface design for the xShmLock method of the VFS.
FossilOrigin-Name: 348409de26eafe12f5cb1236e8e167a4183d4051
2010-04-28 17:21:33 +00:00
drh
833bf968e3 Rename the sqlite3_log_hook() to sqlite3_wal_hook(). Added comments to
wal.h.

FossilOrigin-Name: bbc385111b19071e20fe963fab814262c815b3e9
2010-04-28 14:42:19 +00:00