8000 Tags · lucaong/cubdb · GitHub
[go: up one dir, main page]
More Web Proxy on the site http://driver.im/
Skip to content

Tags: lucaong/cubdb

Tags

v2.0.2

Toggle v2.0.2's commit message
Version v2.0.2

Changes:

  - Better exception in case of file errors (such as `:efbig`)

v2.0.1

Toggle v2.0.1's commit message
Version v2.0.1

Changes:

  - Avoid unnecessary commits in the compaction catching up phase
  - More informative error when running out of disk space
  - Avoid leaking processes when stopping `CubDB` during a compaction

v2.0.0

Toggle v2.0.0's commit message
Version v2.0.0

Refer to the [CHANGELOG](https://hexdocs.pm/cubdb/changelog.html) for
details on changes.

v2.0.0-rc.1

Toggle v2.0.0-rc.1's commit message
Version v2.0.0-rc.1

Changes from `v1.1.0`:

  - [breaking] The functions `CubDB.get_and_update/3`,
    `CubDB.get_and_update_multi/3`, and `CubDB.select/2` now return directly
    `result`, instead of a `{:ok, result}` tuple.
  - [breaking] `CubDB.get_and_update_multi/4` does not take an option argument
    anymore, making it `CubDB.get_and_update_multi/3`. The only available option
    used to be `:timeout`, which is not supported anymore.
  - [breaking] Remove the `:timeout` option on `CubDB.select/2`. This is part of
    a refactoring and improvement that moves read operations from an internally
    spawned `Task` to the client process. This makes the `:timeout` option
    unnecessary: by stopping the process calling `CubDB`, any running read
    operation by that process is stopped.
  - [breaking] `CubDB.select/2` now returns a lazy stream that can be used with
    functions in `Enum` and `Stream`. This makes the `:pipe` and `:reduce`
    options unnecessary, so those options were removed.
  - Add `CubDB.snapshot/2`, `CubDB.with_snapshot/1` and
    `CubDB.release_snapshot/1` to get zero cost read-only snapshots of the
    database. The functions in `CubDB.Snapshot` allow to read from a snapshot.
  - Add `CubDB.transaction/2` to perform multiple write (and read) operations in
    a single atomic transaction. The functions in `CubDB.Tx` allow to read and
    write inside a transaction.
  - Add `CubDB.back_up/2` to produce a database backup. The backup process does
    not block readers or writers, and is isolated from concurrent writes.
  - Add `CubDB.halt_compaction/1` to stop any running compaction operation
  - Add `CubDB.compacting?/1` to check if a compaction is currently running
  - Move read and write operations to the caller process as opposed to the
    `CubDB` server process.
  - Improve concurrency of read operations while writing

v1.1.0

Toggle v1.1.0's commit message
Version v1.1.0

Changes:

  - Add `clear/1` function to atomically delete all entries in the database

v1.0.0

Toggle v1.0.0's commit message
Version v1.0.0

Functionally identical to v1.0.0-rc.10

v1.0.0-rc.10

Toggle v1.0.0-rc.10's commit message
Version v1.0.0-rc.10

Changes:

  - [fix] Fix CubDB.cubdb_file?/1 regexp, making it stricter

v1.0.0-rc.9

Toggle v1.0.0-rc.9's commit message
Version v1.0.0-rc.9

Changes:

  - [fix] fix process (and file descriptor) leak upon compaction

v1.0.0-rc.8

Toggle v1.0.0-rc.8's commit message
Version v1.0.0-rc.8

Changes:

  - Remove default GenServer timeouts

v1.0.0-rc.7

Toggle v1.0.0-rc.7's commit message
Version v1.0.0-rc.7

Changes:

  - `put_and_delete_multi` and `put_multi` have no caller timeout,
    consistently with the other functions.
0