Skip to content

v5-alpha

Pre-release
Pre-release
Compare
Choose a tag to compare
@mbdavid mbdavid released this 04 Aug 23:59
· 759 commits to master since this release

Here is the new alpha version of LiteDB v5. It's an alpha version, so that means it's not ready for production yet! The API may change and data format can also change before final release. But we would be very pleased if you could test the new version and give feedback or report any issues that you stumble upon.

New major version

  • Complete new engine - WAL (Write Ahead Log)
  • MultiVersion Concurrency Control (Snapshots & Checkpoint)
  • Full transaction support
  • Support for multiple readers without locking
  • Write lock on collection-level instead of database-level
  • Doubled the amount of indexes per collection, now up to 32 indexes per collection
  • New FileStorage with custom Id type
  • New BsonExpressions: transform, filter, map, reduce, ..
  • New Query Pipe inside engine
  • Simple upgrade of existing LiteDB v4 databases (use upgrade=true in connection string)
  • New Linq visitor (with support for more expressions)
  • New fluent Query
  • And more than one year of hard working!!

SQL Support

  • New SQL language support - very similar to ANSI SQL
  • Select, Insert, Update, Delete, Create Index, Drop Index, Drop Collection, Explain
  • Support for GroupBy, Having, Limit, Offset, OrderBy, Includes, ...
  • System collections (get information about the database)
  • Support to system function (import/export CSV/JSON)

LiteDB Studio

  • New GUI for Windows
  • Multi tab, multi thread, multi transactions
  • Interact with your database and collections using SQL statements

Know issues

  • Missing Shrink method and UserVersion property
  • Curretly not completely compatible with LinqKit PredicateBuilder
  • Only single process for now (with multi thread support) - no multi process yet