Opened 7 months ago

Closed 4 months ago

#73204 closed update (fixed)

lmdb: Maybe update to 0.9.34?

Reported by: artkiver (グレェ) Owned by: artkiver (グレェ)
Priority: Normal Milestone:
Component: ports Version:
Keywords: Cc:
Port: lmdb

Description

I do not see a new release tagged via:

https://git.openldap.org/openldap/openldap/-/tags?sort=updated_desc

However, via repology.org, it looks as if there is a 0.9.34 release starting to percolate out which sometimes is indicative of an official upstream tagged release looming. Certainly, HP UX Itanium builds (as that is the only thing claiming such a release version currently via https://repology.org/project/lmdb/versions ) would impact very few users, so maybe that's a useful test platform for someone?

The salient commit, fixing a race condition, appears to be here:

https://git.openldap.org/openldap/openldap/-/commit/32c2e5a451ae7e2b6b904830cce589a2f5a8cc41

(Though perhaps the nomenclature indicates this is going into a release engineering phase as a precursor to a formally tagged release?)

Having written as much:

I am currently overseas for the Mira Festival in Barcelona (.mov last night at IDEAL was an awesome pre-event!) and did not bring any macOS systems with me. Subsequently, I am unable to dig into this more deeply using my crude touch screen pocket device with its substandard OS and tools; moreover I don't have suitable systems in data centers to access remotely via SSH as I may have in the past (usually thanks to previous employers' resources).

My return flight to SFO is on November 9th, 2025 but it will probably still take me a day or two after that to retrieve a laptop from storage and update the Portfile.

If anyone else wants to contribute while I am AFK, they are more than welcome to do so!

However, I wanted to open this mostly to document that I'm not ignoring the new release (or looming release pre release as it may be in reality, presently) so much as I am not easily able to do much more about it for the time being.

So much for travelling lightly!

Change History (7)

comment:1 Changed 7 months ago by jmroot (Joshua Root)

Port: lmdb added

comment:2 Changed 7 months ago by ryandesign (Ryan Carsten Schmidt)

Summary: Maybe update lmdb to 0.9.34?lmdb: Maybe update to 0.9.34?

comment:3 Changed 4 months ago by artkiver (グレェ)

It looks as if 0.9.34 is closer to release, or at least I see more distros in repology.org claiming to have it.

Though, looking at https://gitlab.com/openldap/openldap/-/tags/LMDB_0.9.34

The comment for that commit is:

 03d56d53 · Prep for release (0.9.34) · 2 days ago 

Regardless, I thought I would give it a go!

But, ran into a build error as follows:

port -v install    
--->  Fetching archive for lmdb
Attempting to fetch https://packages.macports.org/lmdb/lmdb-0.9.34_0.darwin_25.arm64.tbz2
Attempting to fetch http://mirror.fcix.net/macports/packages/lmdb/lmdb-0.9.34_0.darwin_25.arm64.tbz2
Attempting to fetch https://bos.us.packages.macports.org/lmdb/lmdb-0.9.34_0.darwin_25.arm64.tbz2
--->  Extracting lmdb
--->  Extracting openldap-0.9.34.tar.bz2
Executing:  cd "/opt/local/var/macports/build/lmdb-422dc47a/work" && /usr/bin/bzip2 -dc '/opt/local/var/macports/distfiles/lmdb/openldap-0.9.34.tar.bz2' | /usr/bin/tar -xf - 
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objc
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objc/usr
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objc/usr/bin
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cxx
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cxx/usr
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cxx/usr/bin
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objcxx
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objcxx/usr
xinstall: mkdir /opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objcxx/usr/bin
--->  Configuring lmdb
--->  Building lmdb
Executing:  cd "/opt/local/var/macports/build/lmdb-422dc47a/work/openldap-0.9.34/libraries/liblmdb" && /usr/bin/make -j8 -w all SOEXT=.dylib prefix=/opt/local CC="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang" CXX="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cxx/usr/bin/clang++" OBJC="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objc/usr/bin/clang" OBJCXX="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objcxx/usr/bin/clang++" CFLAGS="-Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64" INSTALL="/opt/local/libexec/macports/clonebin/install" 
make: Entering directory `/opt/local/var/macports/build/lmdb-422dc47a/work/openldap-0.9.34/libraries/liblmdb'
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mdb.c
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c midl.c
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -fPIC -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mdb.c -o mdb.lo
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -fPIC -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c midl.c -o midl.lo
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mdb_stat.c
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mdb_copy.c
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mdb_dump.c
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mdb_load.c
mdb.c:2589mdb.c::2589:33: error: use of undeclared identifier 'fd'
33: error: use of undeclared identifier 'fd'
 2589 |                         else if (flags == MS_SYNC 2589 |                         else if (flags == MS_SYNC && MDB_FDATASYNC(env->me_fd))
      |                                                      ^
 && MDB_FDATASYNC(env->me_fd))
      |                                                      ^
mdb.c:132:32: note: expanded from macro 'MDB_FDATASYNC'
mdb.c:132:32: note: expanded from macro 'MDB_FDATASYNC'
  132 | #  define MDB_FDATASYNC         fcntl(fd, F_FULLFSYNC)
      |                                       ^
  132 | #  define MDB_FDATASYNC         fcntl(fd, F_FULLFSYNC)
      |                                       ^
mdb.c:2599:8: error: use of undeclared identifier 'fd'
 2599 |                         if (MDB_FDATASYNC(env->me_fd))
      |                             ^
mdb.c:132:32: note: expanded from macro 'MDB_FDATASYNC'
mdb.c:2599:8: error: use of undeclared identifier 'fd'
  132 | #  de f2599i | n        e                 MDB_FDATASYNiCf          (fMcntl(fd, F_FULLFSYNC)
      |                                       ^
DB_FDATASYNC(env->me_fd))
      |                             ^
mdb.c:132:32: note: expanded from macro 'MDB_FDATASYNC'
  132 | #  define MDB_FDATASYNC         fcntl(fd, F_FULLFSYNC)
      |                                       ^
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mtest.c
2 errors generated.
2 errors generated.
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mtest2.c
/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang -Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64 -I/opt/local/include -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -c mtest3.c
make: *** [mdb.lo] Error 1
make: *** Waiting for unfinished jobs....
make: *** [mdb.o] Error 1
make: Leaving directory `/opt/local/var/macports/build/lmdb-422dc47a/work/openldap-0.9.34/libraries/liblmdb'
Command failed:  cd "/opt/local/var/macports/build/lmdb-422dc47a/work/openldap-0.9.34/libraries/liblmdb" && /usr/bin/make -j8 -w all SOEXT=.dylib prefix=/opt/local CC="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cc/usr/bin/clang" CXX="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/cxx/usr/bin/clang++" OBJC="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objc/usr/bin/clang" OBJCXX="/opt/local/var/macports/build/lmdb-422dc47a/work/compwrap/objcxx/usr/bin/clang++" CFLAGS="-Os -isysroot/Library/Developer/CommandLineTools/SDKs/MacOSX26.sdk -arch arm64" INSTALL="/opt/local/libexec/macports/clonebin/install" 
Exit code: 2
Error: Failed to build lmdb: command execution failed
Error: See /opt/local/var/macports/logs/_opt_local_var_macports_sources_rsync.macports.org_macports_release_tarballs_ports_databases_lmdb/lmdb/main.log for details.
Error: Follow https://guide.macports.org/#project.tickets if you believe there
is a bug.
Error: Processing of port lmdb failed

Other perspective welcome! I'll see if I can figure anything else out on my own, but I may be jumping the gun again.

comment:4 Changed 4 months ago by artkiver (グレェ)

I'm not sure if it's premature since I am still not certain that 0.9.34 is released, or just tagged with a commit message of an imminent release, but I submitted a bug report upstream and am mentioning it here for completeness sake:

https://bugs.openldap.org/show_bug.cgi?id=10434

comment:5 Changed 4 months ago by artkiver (グレェ)

Sweet! They fixed it upstream:

https://bugs.openldap.org/show_bug.cgi?id=10434#c2

I'm still not certain if 0.9.34 is officially released?

0.9.35 has been tagged here though:

https://gitlab.com/openldap/openldap/-/tags/LMDB_0.9.35

So, I'm going to submit a Pull Request with that update (which I have confirmed builds cleanly locally at least).

comment:6 Changed 4 months ago by artkiver (グレェ)

comment:7 Changed 4 months ago by artkiver (グレェ)

Owner: set to artkiver
Resolution: fixed
Status: newclosed

In bf85ac63645fdd48d9a17754923616c6b24c99f9/macports-ports (master):

lmdb: update to 0.9.35

Note: See TracTickets for help on using tickets.