aboutsummaryrefslogtreecommitdiff
path: root/databases/lmdb
Commit message (Collapse)AuthorAgeFilesLines
* databases/lmdb: Add a pkg-config file for use by other software thatXin LI2020-09-233-1/+17
| | | | | | | | | expects them. Submitted by: Daniel O'Connor <darius dons net au> Notes: svn path=/head/; revision=549648
* databases/lmdb: in db_env_close0(), destroy robust mutexes if we areXin LI2020-06-162-4/+31
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | the only remaining user. When closing an lmdb database, all memory and file descriptor resources are released, including the shared memory pages that contained the robust mutex. However, before this commit, prior to unmapping the pages that contained the robust mutexex, lmdb did not destroy the mutexes first. This would create a problem when an application opens and closes a database, then open it again. According to libthr(3), by default, a shared lock backed by a mapped file in memory is automatically destroyed on the last unmap of the corresponding file' page, which is allowed by POSIX. After unmapping the shared pages, the kernel writes off all active robust mutexes associated with these pages. However, the userland threading library still keeps the record (pshared_lookup in thr_pshared.c of libthr) for these objects as they are not really destroyed before, so that it don't have to ask the kernel every time when looking them up. Now, a later re-open of the database might have mapped the lock file to the same memory location. Because the threading library have remembered the robust mutex object, it would just reuse it even though it was already invalid from kernel's point of view. Unfortunately, regular lock operations would still work for this process. Should another lmdb process opens the same database, it would attempt to obtain the robust mutex (no longer recognized by kernel) because it would see another process holding a file lock, but that would fail because the robust mutex is invalid for the kernel. Explicitly destroy the mutex if we are the last remaining user to ensure the mutex is always in a known defined state. OpenLDAP ITS #9278 With debugging help from: kib PR: 244493 MFH: 2020Q2 Notes: svn path=/head/; revision=539379
* - Drop support of FreeBSD < 11.0Xin LI2019-12-072-8/+12
| | | | | | | - Make use of robust mutexes. Notes: svn path=/head/; revision=519246
* Update to 0.9.24.Xin LI2019-08-062-4/+4
| | | | Notes: svn path=/head/; revision=508235
* Update WWWSunpoet Po-Chuan Hsieh2019-01-131-1/+1
| | | | | | | Approved by: portmgr (blanket) Notes: svn path=/head/; revision=490200
* Update to 0.9.23.Xin LI2018-12-302-5/+4
| | | | Notes: svn path=/head/; revision=488700
* databases/lmdb: back out r478269 due to cyrus-imapd30 instabilityJan Beich2018-09-032-19/+7
| | | | | | | | | | | | | Robust mutexes were already enabled but r478269 disabled POSIX semaphores. It appears both are only mutually exclusive on Android and old GNU libc. PR: 230564 Reported by: Volodymyr Kostyrko Pointy hat to: jbeich Notes: svn path=/head/; revision=478856
* databases/lmdb: switch to robust mutexes on FreeBSD >= 11Jan Beich2018-08-282-6/+19
| | | | | | | | PR: 230564 Approved by: delphij (maintainer) Notes: svn path=/head/; revision=478269
* databases/lmdb: update to 0.9.22Pietro Cerutti2018-03-302-4/+4
| | | | | | | | | | | | | | | | LMDB 0.9.22 Release (2018-03-22) Fix MDB_DUPSORT alignment bug (ITS#8819) Fix regression with new db from 0.9.19 (ITS#8760) Fix liblmdb to build on Solaris (ITS#8612) Fix delete behavior with DUPSORT DB (ITS#8622) Fix mdb_cursor_get/mdb_cursor_del behavior (ITS#8722) PR: 227103 Submitted by: gahr Approved by: delphij (maintainer) Notes: svn path=/head/; revision=465958
* databases/lmdb: use fdatasync where supportedPietro Cerutti2017-09-252-2/+11
| | | | | | | | | | | Submitted upstream in http://www.openldap.org/its/index.cgi?findid=8739 PR: 222514 Submitted by: gahr Approved by: delphij (maintainer, via private email) Notes: svn path=/head/; revision=450579
* Update to 0.9.21.Xin LI2017-06-042-4/+4
| | | | Notes: svn path=/head/; revision=442537
* databases/lmdb: remove useless TEST_TARGETPietro Cerutti2017-04-251-2/+0
| | | | | | | Reported by: mat Notes: svn path=/head/; revision=439376
* databases/lmdb: update to 0.9.19Pietro Cerutti2017-04-253-24/+37
| | | | | | | | | PR: 218334 Submitted by: gahr Approved by: maintainer timeout Notes: svn path=/head/; revision=439375
* Downgrade to 0.9.18 due to regressions.Xin LI2017-01-183-13/+16
| | | | Notes: svn path=/head/; revision=431818
* Update to 0.9.20.Xin LI2017-01-123-15/+13
| | | | Notes: svn path=/head/; revision=431230
* Add soname and cleanupMathieu Arnold2016-08-092-16/+10
| | | | | | | | | | | | | | | Using soname allows pkg(8) to register the library, and it helps on upgrades. Use WRKSRC_SUBDIR Use MAKE_ARGS instead of MAKE_ENV so the patch can be simplified. PR: 211700 Submitted by: mat Approved by: delphij (maintainer) Sponsored by: Absolight Notes: svn path=/head/; revision=419973
* Update to 0.9.18.Xin LI2016-04-183-31/+42
| | | | | | | | PR: ports/208766 Submitted by: gahr Notes: svn path=/head/; revision=413562
* Update to 0.9.16.Xin LI2015-08-212-3/+3
| | | | Notes: svn path=/head/; revision=394991
* Cleanup some abusive use of GH_TAGNAME.Mathieu Arnold2015-08-042-3/+3
| | | | | | | | With hat: portmgr Sponsored by: Absolight Notes: svn path=/head/; revision=393516
* Update to 0.9.15, move to Github and add LICENSE.Xin LI2015-07-022-11/+12
| | | | Notes: svn path=/head/; revision=391176
* - Don't install static libraries with INSTALL_LIB (part 1/2)Dmitry Marakasov2015-05-081-1/+2
| | | | | | | | Approved by: portmgr blanket MFH: 2015Q2 Notes: svn path=/head/; revision=385787
* Update to 0.9.14.Xin LI2015-04-144-18/+28
| | | | Notes: svn path=/head/; revision=384009
* databases category: Remove $PTHREAD_LIBSJohn Marino2015-03-251-1/+1
| | | | | | | | | Note: virtuoso did not pass check-plist from before, so it was fixed. approved by: PTHREAD blanket Notes: svn path=/head/; revision=382201
* Use local mirror ONLY as gitorious.org keeps rerolling with only timestampXin LI2014-08-211-2/+2
| | | | | | | change and there is no way to workaround that with the current framework. Notes: svn path=/head/; revision=365536
* Refresh after distfile reroll. No content change detected in source in myXin LI2014-08-182-3/+1
| | | | | | | manual inspection, so no PORTREVISION bump. Notes: svn path=/head/; revision=365267
* Mark BROKEN: Checksum mismatchAntoine Brodin2014-08-171-0/+2
| | | | | | | Reported by: pkg-fallout Notes: svn path=/head/; revision=365257
* Update to 0.9.13.Xin LI2014-08-092-3/+3
| | | | Notes: svn path=/head/; revision=364419
* Convert all :U to :tu and :L to :tlBaptiste Daroussin2014-05-051-1/+1
| | | | | | | | | | | | | | | | | Since FreeBSD 8.4 and FreeBSD 9.1 make(1) do support :tu and :tl as a replacement for :U and :L (which has been marked as deprecated) bmake which is the default on FreeBSD 10+ only support by default :tu/:tl a hack has been added at the time to support :U and :L to ease migration. This hack is now not necessary anymore Note that this makes the ports tree incompatible with make(1) from FreeBSD 8.3 or earlier With hat: portmgr Notes: svn path=/head/; revision=352986
* Support stagingEmanuel Haupt2014-02-202-12/+14
| | | | Notes: svn path=/head/; revision=345175
* Update to 0.9.11Xin LI2014-01-152-3/+3
| | | | Notes: svn path=/head/; revision=339811
* Update to 0.9.10.Xin LI2013-11-202-3/+3
| | | | Notes: svn path=/head/; revision=334450
* Update to 0.9.9.Xin LI2013-10-282-3/+3
| | | | Notes: svn path=/head/; revision=331826
* Add NO_STAGE all over the place in preparation for the staging support (cat: ↵Baptiste Daroussin2013-09-201-0/+1
| | | | | | | databases) Notes: svn path=/head/; revision=327717
* - Update to 0.9.8.Xin LI2013-09-092-7/+21
| | | | | | | | - Override 'do-install' target so we install shared library with a version number. Notes: svn path=/head/; revision=326841
* Use local mirror for lmdb distfiles.Xin LI2013-09-031-3/+2
| | | | Notes: svn path=/head/; revision=326229
* - Mark BROKEN, fails to fetchBryan Drewery2013-08-311-0/+2
| | | | Notes: svn path=/head/; revision=325744
* Update to 0.9.7.Xin LI2013-08-163-19/+24
| | | | Notes: svn path=/head/; revision=324812
* LMDB is an ultra-fast, ultra-compact key-value dataXin LI2013-03-114-0/+86
store developed by Symas for the OpenLDAP Project. PR: ports/174007 Notes: svn path=/head/; revision=313947