Version 3.4.0 of libzdb is available:
Download: https://www.tildeslash.com/libzdb/dist/libzdb-3.4.0.tar.gz
SHA256 checksum: abd675719bcbdde430aa4ee13975b980d55d2abcb5cc228082a30320a6bb9f0f
Please see the full release notes at https://tildeslash.com/libzdb/#release_notes
Hot on the heels of the previous release, here's a new one. I wanted this out to complement the previous release. Of note in this release are:
• Support for specifying the transaction isolation level using Connection_beginTransactionType(). Or Connection::beginTransaction in C++.
• Activation of multi-thread mode with SQLite, which should be very useful and improve concurrency for multi-threaded applications. Also, some clean up and removal of support for the deprecated shared cache mode. Add serialized=true to the URL if you instead want to use SQLite in serialized mode. SQLite has a page describing threading modes in more detail, https://www.sqlite.org/threadsafe.html
• Plus some C++ fixes.
• Finally, we introduce a useful little macro, 'valueOr', inspired by C++'s std::optional's value_or() function. This macro is defined in zdb.h and can be used with pointer and numeric types to set a default value if a function or expression returns NULL, 0, or a negative value. It should be quite useful with e.g. ResultSet. Example: const char* host = valueOr(ResultSet_getStringByName(r, "host"), "localhost”);