upscaledb 2.2.0 - Release Notes
upscaledb Embedded Storage is a database engine written in C/C++. It is fast,
production-proven and easy to use.
There are a few significant changes coming with this release:
1. A new query interface (uqi_select and uqi_select_range) with an SQL-ish
query language. The query engine can be extended through custom plugins,
which can also be loaded from an external library. You can therefore
run fast queries even when using the remote API or wrapper APIs like java,
.NET, Python or Erlang.
2. Records can now also be "typed", i.e. for uint32, uint64 and all other
currently supported types.
In addition there were a few (mostly minor) changes in the API and a bug
fix.
CALL FOR ACTION:
I will upgrade some parts of the code to C++ 11 with the next releases,
starting with non-critical parts (i.e. unittests, tools). If your compiler
does not yet support C++11 then please tell me.
New Features
- Records are now typed, just like the keys
- A new query interface based on SQL-ish query statements
Bugfixes
- issue #71: fixed growing journal file (thanks, Hitoshi Yonemichi)
- issue #74: fixed ups_import for databases with record numbers (thanks, mjmckp)
- issue #71: fixed ARM compilation (thanks, MrApe)
Other Changes
- Added ups_at_exit cleanup function to release statically allocated resources
- Removed UPS_PARTIAL and all related functionality
- Removed UPS_FLUSH_TXN_IMMEDIATELY - it was deprecated and not used
- UPS_DIRECT_ACCESS is now deprecated and only used internally
- ups_info, ups_dump and ups_export now work for UPS_TYPE_CUSTOM databases
- ups_cursor_get_record_size: size is now uint32_t* instead of uint64_t*