Commit Graph

273 Commits

Author SHA1 Message Date
drh
309e6555a5 Make sure file descriptors are closed before unlinking in VxWorks.
FossilOrigin-Name: f64b81f13de4875343c752e7183bf61032dc9594
2010-02-05 18:00:26 +00:00
drh
7ed97b9de9 Move the Apple OS-X VFS changes into the trunk.
FossilOrigin-Name: 571594bfbe89d9949bdb8b07712e96d0a3467c6e
2010-01-20 13:07:21 +00:00
drh
9061ad10bc Fix a case in os_unix.c where two structures that might have uninitialized
padding bytes are compared using memcmp().

FossilOrigin-Name: e02f25560216c7c96c5e1c7e71a8531650b3a96f
2010-01-05 00:14:49 +00:00
drh
476bda7de4 In the OSTRACE debugging macros in os_unix.c, identify the VFS currently
in use.

FossilOrigin-Name: 082b8da005128f47f63e95b6b702bf4517221b2a
2009-12-04 14:25:18 +00:00
drh
3313b14f46 Fix the backup API so that a backup from an empty database to a non-empty
database works.  Ticket [0bf974bdf9].  The only changes are in assert()
statements.

FossilOrigin-Name: ddb71cd9ed395804a13dc136bb7688a7627c798f
2009-11-06 04:13:18 +00:00
drh
1d452e1de0 Fix compiler warnings. Better comments on some variables associated with
LIKE/GLOB processing in the query planner.

FossilOrigin-Name: cfa2db0ff7a94e7f66c35f672ee41cadd45a6dd7
2009-11-01 19:26:59 +00:00
drh
9b5db1dbd6 Use memcpy() rather than structure assignment so that memcmp() can later
be used for comparison.  Ticket [8550ecca70]

FossilOrigin-Name: 56f609da4bfcc794e1f8573652dcde8515e87098
2009-10-07 23:42:25 +00:00
drh
08da4bb16e Make sure the threadsOverrideEachOthersLocks variable is only referenced by
linux systems on a threadsafe compile.

FossilOrigin-Name: e9d064bd9318c2bc9248df948f71fd30f24525eb
2009-09-10 19:20:03 +00:00
dan
11b3879b18 Trying to open a transaction in one thread and close it in another is a misuse with LinuxThreads. Doing so may cause memory and file-descriptors to be leaked. Update an assert() and some test cases to account for this.
FossilOrigin-Name: ef99eb57c536d82e7c19fd3d990c17793cc64a3f
2009-09-09 18:46:52 +00:00
drh
3f022189dd Suppress some harmless compiler warnings.
FossilOrigin-Name: f0c72a53c5d57d7487b48a06a40816153f47aaac
2009-09-09 16:10:50 +00:00
drh
0c2694b744 Add the "unix-wfl" VFS that does whole-file locking in order to help NFS
do better cache coherency.

FossilOrigin-Name: 2aeab80e5b84f5e94c5c99b4adeca805601c844b
2009-09-03 16:23:44 +00:00
drh
2238dcccc7 Patch to the named semaphore locking mechanism used by VxWorks.
FossilOrigin-Name: 609c5341bea16e4e8bcd15388b209c753ca9e0bb
2009-08-27 17:56:20 +00:00
dan
15edd587fd Fix a bad interaction between "proxy-locking" and [http://www.sqlite.org/src/vdiff/aa6acfa8caa2ef59b4c16dfe42c4b5644da96905|aa6acfa8ca].
FossilOrigin-Name: 2a5c9e1dbf7f5f4b2081c964450a9305a4516f5b
2009-08-25 05:57:47 +00:00
dan
6aa657f76b Fix some errors in [http://www.sqlite.org/src/vdiff/aa6acfa8caa2ef59b4c16dfe42c4b5644da96905|aa6acfa8ca].
FossilOrigin-Name: 82d1934a428a34c292a612fb67bbcea262990e0f
2009-08-24 18:57:58 +00:00
dan
e946c3966a Fix a problem in os_unix.c where a malloc failure could lead to a leaked file descriptor.
FossilOrigin-Name: aa6acfa8caa2ef59b4c16dfe42c4b5644da96905
2009-08-22 11:39:46 +00:00
dan
08da86a68e When a database file is opened, try to find an unused file descriptor to reuse. This change affects unix (and other systems that use os_unix.c) only. Fix for cvstrac ticket [http://www.sqlite.org/cvstrac/tktview?tn=4018|#4018].
FossilOrigin-Name: 9b4d9ab62d687289837b13b07885e72cc3abe8a9
2009-08-21 17:18:03 +00:00
dan
9359c7b7ab Add assert() statements to os_unix.c to check that the mutex is held when it should be.
FossilOrigin-Name: 11a669b6537d6bac67764fd91a319234345ac504
2009-08-21 08:29:10 +00:00
dan
3d6e060b48 Move error simulation code from the sqlite3_os_init() functions into a wrapper.
FossilOrigin-Name: 67ad21abf88abb7a3e2eacddcaf1ab5d54149807
2009-08-17 15:52:25 +00:00
dan
e1ab219309 Add tests to check that sqlite recovers from an error in sqlite3_initialize() correctly.
FossilOrigin-Name: 904a371c6c9d3f20332b37767b06161fa0a78113
2009-08-17 15:16:19 +00:00
drh
06150f95e8 Test the result of pthread_create() and do not call pthread_join() if the
thread creation failed.  Ticket #3933. (CVS 6839)

FossilOrigin-Name: 304c5110ad958b2cc1ddff30e68c8791109128b5
2009-07-03 12:57:58 +00:00
drh
0d588bbc38 Suppress some -Wextra compiler warnings from GCC. (CVS 6774)
FossilOrigin-Name: 59ec937ce226bbf6c48c5e0466d3bab48873c9ea
2009-06-17 13:09:38 +00:00
drh
0b3bf92417 Changes to allow a clean compile with no floating-point instructions
generated when SQLITE_OMIT_FLOATING_POINT is used. (CVS 6763)

FossilOrigin-Name: 1591b8322babebc45df3b799cc5e457288f28594
2009-06-15 20:45:34 +00:00
danielk1977
50c55a90d5 Fix a warning in the osx-specific part of os_unix.c. Ticket #3847. (CVS 6620)
FossilOrigin-Name: 254ca3273cfbd833de82296b4859e1ec5535e8be
2009-05-08 11:34:37 +00:00
chw
78a1318b2e Compile fixes and improvements for vxwork: fixed deadlock in semClose,
detect if fcntl is usable, fall back to named semaphores if not. (CVS 6460)

FossilOrigin-Name: efd0682b7e78acc4242cf257fc246350fc29b5c8
2009-04-07 05:35:03 +00:00
drh
577d674f1a It is OK for a unix file descriptor to be zero. It just can't be negative.
Adjust an assert accordingly.  Ticket #3781. (CVS 6457)

FossilOrigin-Name: 47aa7eb0e047e30bbf09cb08c1e48c61f8d9861c
2009-04-07 00:35:20 +00:00
danielk1977
64a54c52fe Another change related to (6401) and (6402): When an attempt to unlock a file fails in os_unix.c, close all files held open waiting for the unlock event anyway.
This prevents a file-descriptor leak when testing IO errors. (CVS 6406)

FossilOrigin-Name: 50fbcdea045f7d4266d9afa721616c720564aa93
2009-03-30 07:39:35 +00:00
drh
f48f9ca65c Previous commit ((6401)) did not quite fix the problem. This should work
better. (CVS 6402)

FossilOrigin-Name: 2e7d3cc9f04de1fe7ef95cd5736dbc409c209cef
2009-03-28 23:47:10 +00:00
drh
cd731cf540 In the unix-backend, when simulating an I/O error on an unlock operation,
still mark the connection as unlocked to avoid a future assert(). (CVS 6401)

FossilOrigin-Name: fb35cff855e17771caee2a992e7b2b4105b94862
2009-03-28 23:23:02 +00:00
drh
892404323f Use fdatasync() only on linux, unless -Dfdatasync=fdatasync is set at
compilation time. (CVS 6383)

FossilOrigin-Name: cbf2ca4cc41f1f710635b863db6e98074bd5e8bc
2009-03-25 01:06:01 +00:00
drh
4a7384a25f Rig the unix backend to use fdatasync() by default, without having to set the
HAVE_FDATASYNC macro.  Systems that do not support fdatasync() can be compiled
using -Dfdatasync=fsync. (CVS 6368)

FossilOrigin-Name: a331562727be465874a66c2c1d15ee070f96f7e0
2009-03-21 14:56:52 +00:00
drh
0b647ffd47 On unix, always use fdatasync() instead of fsync() when available, even if
the file size changes, since (we are told) fdatasync() will automatically
flush the inode when the file size changes. (CVS 6367)

FossilOrigin-Name: 0d6b11bcf67f86e5554806869d32338e5831833e
2009-03-21 14:41:04 +00:00
drh
d43fe20bc9 Suppress some compiler warnings (where possible). Ticket #3696. (CVS 6331)
FossilOrigin-Name: a2373e5409e4e59903f315a4446db8cb6ba000cc
2009-03-01 22:29:20 +00:00
drh
08c6d4468c Add assert() statements to os_unix.c which fire if there is a read or
write for the locking region of a database file. (CVS 6270)

FossilOrigin-Name: 93e792ffa88ba2e8422d041f36b70d9b2e220da2
2009-02-09 17:34:07 +00:00
danielk1977
09480a9dc2 Ignore the return structure of and F_GETLK fcntl() call on djgpp. Fix for #3642. (CVS 6268)
FossilOrigin-Name: 8227af3463ded1c52d0a16c63b8dbc516eab57f0
2009-02-09 05:32:32 +00:00
drh
eb0d74ff39 Check at the write() call to work around the msdos bug in OSX actually
succeeds and throw an error if it does not.  #ifdef out the work-around
for all platforms other than OSX.  Ticket #3633. (CVS 6237)

FossilOrigin-Name: b054b569172c53f4e185e4a64f41d08784aa0f8b
2009-02-03 15:27:02 +00:00
drh
a6d90f0ddd Remove a harmless UMR that occurs inside some debugging code. (CVS 6190)
FossilOrigin-Name: 191c399fc6354b35477ec21f685377e2af26f49b
2009-01-16 23:47:42 +00:00
drh
c7288ee0b8 Avoid using ENOTSUP on systems that do not define that symbol.
Ticket #3512. (CVS 6182)

FossilOrigin-Name: fcb6c677124102558f7a7a22bc3569b664424a4c
2009-01-15 04:30:02 +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
drh
d2cb50b74c Coverage improvements in pragma.c. Change the __DARWIN__ macro to __APPLE__,
which is available by default on Leopard. (CVS 6153)

FossilOrigin-Name: 64c56226b91e57883c8059f65330318e53376b8a
2009-01-09 21:41:17 +00:00
drh
617634eca2 Allow database files to be created in the root directory on unix.
Ticket #3570. (CVS 6141)

FossilOrigin-Name: 81014334ad57e380e21c47ad6eebe9f16b4ad24c
2009-01-08 14:36:20 +00:00
danielk1977
852e232922 Fix a variable type to prevent a warning in the proxy-locking code. (CVS 6051)
FossilOrigin-Name: d9595b961800a13c141bebdb8c0a67377f30efad
2008-12-22 03:36:59 +00:00
drh
103fe74315 Fix the TCL test harness so that it compiles and runs on OSX with
SQLITE_ENABLE_LOCKING_STYLE. (CVS 6017)

FossilOrigin-Name: 561d5de16ec07546a3bb691f308fb2495a0d0a43
2008-12-11 02:56:07 +00:00
drh
ea6788322e Never use strlen(). Use our own internal sqlite3Strlen30() which is
guaranteed to never overflow an integer.  Additional explicit casts to
avoid nuisance warning messages. (CVS 6007)

FossilOrigin-Name: c872d554930ecf221ac2be5f886d5d67bb35288c
2008-12-10 19:26:22 +00:00
drh
1875f7a3db The amalgamation now compiles cleanly on GCC with options
-pedantic-errors -Wno-long-long. (CVS 5991)

FossilOrigin-Name: 73c7302c5f76a2f61ecd75f8bda69bb500d3119c
2008-12-08 18:19:17 +00:00
drh
947bd8091b Make sure dot-lock is fully enabled when SQLITE_ENABLE_LOCKING_STYLE is
disabled.  Fix compiler warnings when SQLITE_ENABLE_LOCKING_STYLE is
disabled. (CVS 5976)

FossilOrigin-Name: 4697249fcc6041ba7d2fb89589c855a8bec71eb2
2008-12-04 12:34:15 +00:00
drh
c66d5b64de Fix a missing forward declaration that is needed when
SQLITE_PREFER_PROXY_LOCKING is defined. (CVS 5972)

FossilOrigin-Name: 24235300b3f64f0396e1016afbe31aec9ea69b62
2008-12-03 22:48:32 +00:00
drh
715ff30e27 Reorganize the proxy-locking method in os_unix.c. Additional cleanup. (CVS 5971)
FossilOrigin-Name: 31f6090e22b54d657afc8c23171d000d47850205
2008-12-03 22:32:44 +00:00
aswift
f0551ee5e4 Make os_unix compile with SQLITE_ENABLE_PROXY_LOCKING (CVS 5970)
FossilOrigin-Name: 3efedac6aa4f544d40c2f782109d4e1795e449a0
2008-12-03 21:26:19 +00:00
drh
6b9d6ddc21 Continue with the cleanup of os_unix.c. (CVS 5969)
FossilOrigin-Name: 215d36ea89078036fb66b5154f054613b735dab3
2008-12-03 19:34:47 +00:00
drh
9b35ea62c7 Continuing to refactor os_unix.c. This is an incremental check-in. (CVS 5967)
FossilOrigin-Name: c13df0311ef4f6a510f42105293f7c53c323fda8
2008-11-29 02:20:26 +00:00