Commit Graph

58 Commits

Author SHA1 Message Date
drh
a6064dcf3b Add new thread-testing code and fix locking under Linux threads. Ticket #530. (CVS 1137)
FossilOrigin-Name: b36a4bb61094d539273c21a9e4042384f10a7806
2003-12-19 02:52:05 +00:00
drh
41743984bf Always use "(char*)0" to terminate the argument list of sqliteSetString().
This is needed for 64-bit systems that use a 32-bit integer by default. (CVS 1126)

FossilOrigin-Name: 656c90387a4a714b4f31040ece9b0e15e30934af
2003-12-06 21:43:55 +00:00
drh
41a8230fef Make the sqliteOsCurrentTime() function work for Windows. Code contributed
by "e4liberty" on the mailing list. (CVS 1071)

FossilOrigin-Name: 02fac304c9ec9012f3cc4f04d2c4cac5e37b0024
2003-08-10 16:16:22 +00:00
drh
771d8c3bae Add experimental date and time functions based on julian day number. (CVS 1069)
FossilOrigin-Name: a6197e2075fdf9db862484255ac16b2855bbef0a
2003-08-09 21:32:28 +00:00
drh
a76c82eb0d When creating a new journal file, open a (read-only) file descriptor on the
directory containing the journal and sync that directory once to make sure
that the journal filename entry gets into the directory.  Ticket #410. (CVS 1066)

FossilOrigin-Name: 09c10fe3c99cffc64ed02c2929f206d99c8e3309
2003-07-27 18:59:42 +00:00
drh
4d87325d61 Make sure temporary file names in windows have a full 15 characters of
random text at the end. (CVS 1059)

FossilOrigin-Name: 6ccb92b14f2e6e01bb60dac10331fa7be0b4525e
2003-07-22 00:39:13 +00:00
drh
937dd84de8 Fix a bug in the soundex() code. Ticket #367. Add tests for ticket #261
even thought the problem could not be reproduced. (CVS 1035)

FossilOrigin-Name: e2ca936feee35b3fce99c95c2cf8c0ad05cd9c3b
2003-06-28 16:20:22 +00:00
drh
7d02cb73ca Fix a bug in UPDATE OR REPLACE that was introduced by check-in (999).
Also clean up some compiler warnings for VC++. (CVS 1005)

FossilOrigin-Name: af6f2bdf59fb621ff3e1d061e429f01ebd7d0b42
2003-06-04 16:24:39 +00:00
drh
9ac717d7f6 Modify the windows locking code so that it works correctly for a database
being shared between Win95/98/ME and WinNT/2K/XP systems.  Ticket #310. (CVS 988)

FossilOrigin-Name: 8c402db7e0745622d9950e5ca5d4d8e933da436c
2003-05-29 17:43:08 +00:00
drh
aba46b19f5 Do not use the return value of fcntl() to find the reason that it failed.
Use errno instead.  Tickets #240 and #270. (CVS 938)

FossilOrigin-Name: acf9e9802fa6396df5653ca4e72ab4ec2333509d
2003-04-26 02:40:45 +00:00
drh
f7c5753174 Make VACUUM work even if multiple processes have the database open at once. (CVS 933)
FossilOrigin-Name: caa960289f3d1f5e8f35a94e9e4321996c211ed2
2003-04-25 13:22:51 +00:00
drh
8396566204 Change the shell to use the sqliteIsNumber() routine for determining if
values are numeric.  Modified os.c so that it should now work with DJGPP -
though I have no way of testing this. (CVS 913)

FossilOrigin-Name: 35caefe31750fd103b5f0231ad36f375771063eb
2003-04-17 02:54:13 +00:00
drh
73509eee84 Simplify the BTree interface by shortening names. Added two new methods
for accessing the current filename and for changing the name of the
database file. (CVS 900)

FossilOrigin-Name: 185d8dc8d0c26cef36aeba6992823e5124af4056
2003-04-06 20:44:45 +00:00
drh
001bbcbb8f Modifications to the VDBE to support more than one database file. (CVS 878)
FossilOrigin-Name: 875da9eed981bfa27b98e95025f9fdbed74b4098
2003-03-19 03:14:00 +00:00
drh
94e9203247 Added test code to check for file descriptor leaks. All regression tests pass
now on both win2k and linux. (CVS 868)

FossilOrigin-Name: 75ba78280f7ab6b6acce5878859312f3223ee898
2003-02-16 22:21:32 +00:00
drh
341eae8d35 In the pager, cache a pointer to the first page on the freelist that does not
need to be synced.  This makes a fetch of a page that is not in cache go a
lot faster when the cache is full.  This check-in also adds some performance
instrumentation to the OS layer. (CVS 842)

FossilOrigin-Name: 00f08fc0b5b6b9c5efbf15a62f9a1cc1cfa71283
2003-01-21 02:39:36 +00:00
drh
db48ee02c4 Improvements to the pager to help large updates against a large database run
faster.  Also improved the testing of the pager rollback algorithms. (CVS 835)

FossilOrigin-Name: 717523d3750dce784fa767ed9a8267d1246798ef
2003-01-16 13:42:43 +00:00
drh
820f3812d8 Port ot MacOS Classic. Ticket #218. (CVS 820)
FossilOrigin-Name: 13f82d67f60ae869d5bf2e31d9357a860aa62bad
2003-01-08 13:02:52 +00:00
drh
3e7a609667 Save the full pathname of the database file so that journalling still works
even if the user changes working directories after opening the databae.
Ticket #200. (CVS 798)

FossilOrigin-Name: 1c58b4fc032c5975dcce9b8ae844c0e516254a17
2002-12-07 21:45:14 +00:00
drh
da47d7748f Change to the pager to avoid opening journal files unnecessarily. This can
sometimes results in a significant speed improvement. (CVS 791)

FossilOrigin-Name: fa5c042585c601449ede7319d0c5993cd8ba75a4
2002-12-02 04:25:19 +00:00
drh
d0d006e29c Fixed large file support under Linux. I'm unable to test under Windows.
Ticket #191. (CVS 790)

FossilOrigin-Name: 9864a1265b5a37c12b0dd8446d81b84c5a3acc43
2002-12-01 02:00:57 +00:00
drh
8766c34348 Try to better detect when the library is compiled for large file support (LFS)
but the support is not available in the host OS kernel. (CVS 782)

FossilOrigin-Name: a29d60ecc5ee3f535142a81f56eecbef7875ef22
2002-11-09 00:33:15 +00:00
drh
829e802992 Add large file support to Windows. Change large file support for Unix so
that it compiles automatically - without requiring special options on the
compiler command line. (CVS 781)

FossilOrigin-Name: 2008b56fe11e49d52e28f47d14ccd70504e6c094
2002-11-06 14:08:11 +00:00
drh
20e9ab16d8 Changes to include files so that the >2GB file patch will compile under BSD. (CVS 780)
FossilOrigin-Name: 81bb1aed5e9094a9655bd03614bb111d79896928
2002-11-06 00:59:44 +00:00
drh
28be87c7c4 Add support for databases larger than 2GB under Unix. Must be compiled
with -D_FILE_OFFSET_BITS=64 and -D_LARGEFILE_SOURCE in order to work with
larger databases. (CVS 778)

FossilOrigin-Name: a3f67fe9121ca4655510094fe775b8603a87800e
2002-11-05 23:03:02 +00:00
drh
edbbbdf8f7 Rework the changes for ticket #176 (check-ins (760) and (761)) to be
more consistent with the rest of the source code. (CVS 768)

FossilOrigin-Name: f50a177b4239bc7a83563ac9361e830ec04e81fb
2002-10-20 18:19:45 +00:00
mike
16aaf451b7 Minor coding fix in getting the windows platform version, when multithreading (CVS 761)
FossilOrigin-Name: b53ab71d074ada47ce22bd161f6aee24587302af
2002-10-17 09:01:31 +00:00
mike
710dcfbde5 fix for locking in Windows (CVS 760)
FossilOrigin-Name: 83add34f64895a4b465881213eba82f3b1f5c964
2002-10-17 00:38:54 +00:00
drh
f1f0fa0769 Remove the call to srand() and add better comments to the sqliteOsRandomSeed()
routine.  Ticket #163. (CVS 759)

FossilOrigin-Name: d87a886d8f63f54466848151e2b0e8565b338593
2002-10-12 13:43:59 +00:00
drh
4e371ee41c Fix for ticket #146: Correctly handle reads of unused disk blocks at the
end of the file. (CVS 743)

FossilOrigin-Name: f5c2654768a6201fc554b59f1b2f56bcce738bc4
2002-09-05 16:08:27 +00:00
drh
d1efac52d5 Implement probabilistic reader/writer locks under windows so that windows
can have multiple simultaneous readers. (CVS 714)

FossilOrigin-Name: 2127de3f03537ef2f18120e773f7603e0984ff81
2002-08-14 12:56:54 +00:00
drh
0c44e2edf3 Fix for ticket #132: make the working directory the last choice for where
to write temporary files, not the first choice. (CVS 712)

FossilOrigin-Name: 26a4e7e7a3eee62c170ce264cb964a92bc7f52c9
2002-08-14 00:10:44 +00:00
drh
e0e5ef1471 Remove the restriction that a transaction cannot be started by one linuxthread
and continued by another.  Leave in the documentation the warning about not
carrying a database connection across fork() but do not test for it any more.
Ticket #130. (CVS 701)

FossilOrigin-Name: bdbdb866f2e76abd1f8f545adadc9a900ed0cd1a
2002-08-02 10:36:09 +00:00
drh
70562cd342 Partial fix for ticket #96: Return SQLITE_MISUSE from sqlite_exec() if called
from a child process with an active transaction that was started in the parent. (CVS 675)

FossilOrigin-Name: 72a609ec6492e7d740b6e6184fa14a5e6b04a5dc
2002-07-13 17:23:21 +00:00
drh
193a6b4142 More rollback problems: Fix two more errors introduced by checking (410) that
can cause database corruption after a ROLLBACK.  Also add new tests to make
sure everything is working this time. (CVS 663)

FossilOrigin-Name: f6e24d5ccbcfcf5863ffbd65860dafa2f5663e99
2002-07-07 16:52:46 +00:00
drh
f1756d2a79 Remove extra \ characters from temporary filenames under windows.
(Ticket #52) (CVS 596)

FossilOrigin-Name: ed11abc81e638c21ec1aa0445a6d59de91343095
2002-05-29 12:44:52 +00:00
drh
27a3220c54 One more change before 2.4.2: Make the os.h header file more robust in
detecting whether to use unix or windows. (CVS 434)

FossilOrigin-Name: c2e0b79057c9c643e7432e62c90399c8f34339f9
2002-03-20 00:00:29 +00:00
drh
603240cf5d Add the ability to turn of calls to fsync() using the "synchronous" pragma.
Increased the default cache size from 100 to 2000 and made the "cache_size"
pragma persistent. (CVS 418)

FossilOrigin-Name: 414da4af1f4aebc3936ca339fbc7932add081912
2002-03-05 01:11:12 +00:00
drh
5ae7af7cc2 Enhancement to Windows "file-exists" function by Joel Lucsy. (CVS 374)
FossilOrigin-Name: d3d59261da9bef3250e99444167ad6ef98764574
2002-02-18 12:48:45 +00:00
drh
fa86c4127d Checkpoint code added to the pager. Regression tests work but the new APIs
have not been tested yet. (CVS 361)

FossilOrigin-Name: aaa53e113ef849e34883ead8ae584c722ad967db
2002-02-02 15:01:15 +00:00
drh
a297b5c3cf Added implementations for sqliteOsEnterMutex() and sqliteOsLeaveMutex(). (CVS 348)
FossilOrigin-Name: f8a026a3ca14ef0b0d562029dd6b184f060457f4
2002-01-15 18:39:43 +00:00
drh
1ab4300ebc Fix warning messages in VC++. Patches from nicolas352001. (CVS 347)
FossilOrigin-Name: f3038d218c91b44b70b75a7b881ea24c87fa6a02
2002-01-14 09:28:19 +00:00
drh
a7fcb05988 Fix a race condition in the locking code that would sometimes cause
SQLITE_PROTOCOL or SQLITE_CORRUPT to be returned when SQLITE_BUSY should
have been returned. (CVS 326)

FossilOrigin-Name: b0d218876442187af08161d989e6887b1cb4130c
2001-12-14 15:09:55 +00:00
drh
2cf65aad6c Bug fix in the sqliteOsLock() and sqliteOsUnlock() routines of POSIX.
Version 2.1.5. (CVS 325)

FossilOrigin-Name: 669454060867593290c1ce8c45bd87d011976289
2001-12-06 13:24:14 +00:00
drh
c3a64ba0a6 Fix a bug in the locking protocol. (CVS 315)
FossilOrigin-Name: a9db1c12c5a4d5741de0e5eb5aa87c647a5646b8
2001-11-22 00:01:27 +00:00
drh
04096485f4 Minor bugs fixed. (CVS 307)
FossilOrigin-Name: 6e7e7dbf8e93d00eced88404aed792fcf9e75b7d
2001-11-09 22:41:44 +00:00
drh
6d4abfbee5 More changes for 2.0.7. (CVS 293)
FossilOrigin-Name: f8328a5f11801c5124f9a8dace22df3c1cfb2191
2001-10-22 02:58:08 +00:00
drh
98808babd3 Support for UTF-8 and ISO8859 characters in identifiers. Bug fix in
the column name generator for selects (was coreing). (CVS 290)

FossilOrigin-Name: 22948fc685299ca888907eea68edb8a6e87c3f49
2001-10-18 12:34:46 +00:00
drh
1bee3d7b43 Added support for the COUNT_CHANGES pragma in order to help out the
ODBC driver.  Fixed a but on count(*) when applied to empty tables. (CVS 289)

FossilOrigin-Name: 747bf1b30b74cfd0e9c27e7c0bc5172637f35520
2001-10-15 00:44:35 +00:00
drh
81a20f21d5 Fix an assertion failure when the disk fills up. Add tests for a full
disk situation. (CVS 285)

FossilOrigin-Name: 0a7848b6190981cb7eb673bbe68cb217694daf2e
2001-10-12 17:30:04 +00:00