Howard Chu
5ef56b437e
More for ab04c50a32
...
Use explicit MDB_RDONLY flag
2012-09-17 07:01:28 -07:00
Hallvard Furuseth
c67ea9c060
ITS#7377 Catch MDB user errors.
2012-09-17 15:42:15 +02:00
Hallvard Furuseth
c0f3d9b9a8
ITS#7377 Catch MDB setup errors and clean up.
2012-09-17 15:42:15 +02:00
Hallvard Furuseth
fe1b3794de
ITS#7364 Limit mdb lock upgrade before sem_unlink.
...
Do not try shared lock when closing or after error. Track file lock
state to decide. Change meaning of *excl to reflect file lock state.
2012-09-17 15:42:15 +02:00
Hallvard Furuseth
c760e536ec
ITS#7364 Always sem_unlink() in mdb_env_open().
...
Drop the sem_unlink() error checks, which could prevent the 2nd
unlink. Instead use O_EXCL in sem_open().
This makes "open+close the database" the API for trying to clean
away the old semaphores, if they were left behind by a previous run.
2012-09-17 15:42:15 +02:00
Hallvard Furuseth
31be24896b
ITS#7377 Wrap sem_wait & file locks in EINTR loops
2012-09-17 15:42:14 +02:00
Hallvard Furuseth
a35f9b2a53
Remove mdb data races. Use (txnid_t)-1 as "no ID".
...
Avoid race between numreaders++ and reading numreaders at cleanup. Make
the un-mutexed reset of reader table entry, atomic: Reset mr_pid only.
Instead check mr_pid != 0 in mdb_page_alloc()'s scan for readers.
(txnid_t)-1 as "no ID"-mark avoids a check for mr_txnid != 0.
The scan can stop when seeing an old reader.
2012-09-17 15:42:14 +02:00
Hallvard Furuseth
38cc1e96b4
Save pid in MDB_env instead of repeating getpid().
...
An open MDB environment does not survive or catch fork(),
so repeating getpid() was pointless.
2012-09-17 15:42:14 +02:00
Hallvard Furuseth
20a216fcc9
MDB_WRITEMAP needs no DSYNC descriptor (me_mfd)
2012-09-17 15:42:14 +02:00
Hallvard Furuseth
588a84a5ae
ITS#7363 Preprocessor namespace cleanup.
...
Rename USE_POSIX_SEM to MDB_USE_POSIX_SEM.
Separate MDB_FDATASYNC from MDB_USE_POSIX_SEM.
2012-09-17 15:42:14 +02:00
Howard Chu
8bb10add24
More for ab04c50a32
...
Fix typos, error code ranges
2012-09-17 06:35:03 -07:00
Howard Chu
acbff5b1ea
Add mdb_cursor_renew()
...
Allow cursors on read-only txns to be reused with later txns.
2012-09-17 04:41:13 -07:00
Howard Chu
076b2b36a9
Shared lib should depend on pthread
2012-09-17 03:48:54 -07:00
Howard Chu
c542442c9f
Add MDB_SET_KEY cursor op
...
Overwrites the passed in key with the DB's key
2012-09-17 02:17:25 -07:00
Howard Chu
3e47e825fd
ITS#7391 more for ab04c50a32
2012-09-14 12:53:47 -07:00
Howard Chu
867134d4ca
ITS#7390 fix slapd_rw_destroy
2012-09-14 09:27:40 -07:00
Howard Chu
ad79308d5a
Merge remote-tracking branch 'origin/mdb.master'
2012-09-14 06:52:37 -07:00
Howard Chu
ab04c50a32
ITS#7383 More explicit error codes
2012-09-14 06:51:31 -07:00
Howard Chu
bdef02832e
ITS#7386 close read txn in reindex commit
2012-09-12 13:37:22 -07:00
Howard Chu
c2bd7e630d
Merge remote-tracking branch 'origin/mdb.master'
2012-09-12 10:47:36 -07:00
Howard Chu
48ef27b6f5
ITS#7385 fix mdb_page_split (again)
...
More for d793594173
ITS#7229
2012-09-12 10:45:51 -07:00
Howard Chu
c56ede7781
Merge remote-tracking branch 'origin/mdb.master'
2012-09-07 13:42:52 -07:00
Howard Chu
de77882898
Update comments, bump version
...
Note read-write vs read-only mmap tradeoffs.
2012-09-07 13:40:07 -07:00
Howard Chu
2e677bcb99
msync should default to fully synchronous
2012-09-06 11:17:25 -07:00
Howard Chu
1c733bdc4e
Add msync support for WRITEMAP option
2012-09-05 08:40:17 -07:00
Howard Chu
d8a89464cd
Add MDB_WRITEMAP to use a writable mmap
2012-09-05 08:39:46 -07:00
Howard Chu
14a08f877f
More for 57b5fbea49
...
Fix abort of child txn
2012-09-04 06:02:26 -07:00
Howard Chu
54a111907b
More for 38a3317096
...
update mdb_tool_idl_add prototype
2012-09-04 04:44:20 -07:00
Howard Chu
c9c24fbafe
More for ea248dacf4
...
Fix search_aliases invocation
2012-09-04 04:39:17 -07:00
Hallvard Furuseth
4608cd9552
libmdb: Fix P_INVALID when pgno_t != unsigned long
2012-08-29 06:43:35 +02:00
Hallvard Furuseth
3e3c785034
libmdb: Check sem_open() against SEM_FAILED.
2012-08-29 06:42:52 +02:00
Howard Chu
d7dd1bdb82
Merge remote-tracking branch 'origin/mdb.master'
2012-08-27 14:45:58 -07:00
Howard Chu
4bc18a5dd3
In mdb_audit, change assert to fprintf
2012-08-27 14:45:16 -07:00
Howard Chu
bf10bdb03a
Fix typos in prev commit
2012-08-27 14:27:04 -07:00
Howard Chu
ea248dacf4
Don't decode entries until we know they're in scope
2012-08-27 14:08:06 -07:00
Howard Chu
85ae5011e7
Fix mdb_audit()
...
due to a0993354a6
2012-08-26 11:05:45 -07:00
Howard Chu
f980c64cb6
Merge remote-tracking branch 'origin/mdb.master'
2012-08-24 05:34:29 -07:00
Ondrej Kuznik
bd92b570a8
ITS#7369 mdb_stat: cleanup in case something went wrong.
2012-08-24 05:33:46 -07:00
Howard Chu
a2d1b42e39
ITS#7369 abort txn before exiting
2012-08-24 05:23:55 -07:00
Howard Chu
8fe09ba2a6
ITS#7368 SLAP_AUTH_DN stuff is not for RE24 yet
2012-08-23 14:25:52 -07:00
Howard Chu
67dd10ed2c
Merge remote-tracking branch 'origin/mdb.master'
2012-08-22 23:02:48 -07:00
Howard Chu
916995236e
ITS#7364 also close the mutexes as needed
...
Otherwise a process that opens and closes an env more than once
will leak mutex handles. (WIN32/BSD)
2012-08-22 23:01:19 -07:00
Chris Mikkelson
46cf442700
ITS#7364 Remove POSIX semaphores when the last user closes the mdb environment.
2012-08-22 22:55:01 -07:00
Howard Chu
6655e2793e
ITS#7350 actually use zero-length value ACLs
2012-08-22 15:29:17 -07:00
Howard Chu
3d107181cf
ITS#7350 allow value-specific ACLs on zero-length values
2012-08-22 15:05:54 -07:00
Rich Megginson
a0e48e7246
ITS#7360 accept nss certname in the form of tokenname:certnickname
...
There are cases where the user may want to force the use of a particular
PKCS11 device to use for a given certificate. Allow the user to do this
with MozNSS by specifying the cert as "tokenname:certnickname" where
token name is the name of a token/slot in a PKCS11 device and certnickname
is the nickname of a certificate on that device.
2012-08-22 14:21:23 -07:00
Howard Chu
1ebf95c31b
ITS#7359 cleanup for loop
2012-08-22 14:13:10 -07:00
Jan Vcelak
6833b8717a
ITS#7359 MozNSS: fix whitespaces in all my changes
...
To be compliant with OpenLDAP coding standards.
2012-08-22 14:12:01 -07:00
Howard Chu
d377f353b7
Merge remote-tracking branch 'origin/mdb.master'
2012-08-22 14:09:56 -07:00
Chris Mikkelson
9f983b7999
ITS#7363 Use posix semaphores on apple and bsd systems.
2012-08-22 14:09:08 -07:00