Skip to content

Tags: apache/couchdb-erlfdb

Tags

v1.3.6

Toggle v1.3.6's commit message
Fix C prototype declaration to match implementation 

v1.3.5

Toggle v1.3.5's commit message
Install FDB synchronously We were seeing CI failures where the FDB installation would not be completed before we tried to invoke `fdbcli --version`

v1.3.4

Toggle v1.3.4's commit message
Update enc (port compiler) to work with Erlang 23 

v1.3.3

Toggle v1.3.3's commit message
Make the default wait timeout infinity (continued) This the continuation of #22. There, we updated only one `after` clause and forgot the other. The reasoning is the same as before -- make erlfdb behave consistent with other FDB clients which do not have top level client-side timeouts for futures.

v1.3.2

Toggle v1.3.2's commit message
Make the default wait timeout infinity This brings the default behavior in line with other FoundationDB client libraries which don't use client-side timeouts when waiting for futures to fire. A few other reasons are: * Currently we may generate spurious future `ready` messages when timeouts fire during overload scenarios. The caller would have to know to flush ready messages if they caught a `{timeout, _}` * The response may succeed under 5 seconds, but it would be queued in the networking layer and throw a `timeout` error on the Erlang side. * Timeouts can be set as a transaction or db handle options. It's easier to apply configuration defaults there than for individual wait functions. * Watch futures are not bound by the 5 second transaction time limit, and they'd have to know about the default `wait/1,2` call timeout to know to extend it or set it to `infinity`.

v1.3.1

Toggle v1.3.1's commit message
Add ERLFDB_IS_RETRYABLE/2 guard This is a guard which may be used to catch and handle retryable errors. It's more ergonomic as a guard than a function, since the handler won't have to catch and re-throw unwanted (non-retryable) exceptions. Along with a guard, some common FDB error codes are also defined. It's not an exhaustive list and mostly consists of retryable and a few other common errors.

v1.3.0

Toggle v1.3.0's commit message
Make monitor.py use /usr/bin/env python3 Previously it was set to `/usr/bin/python`, however on later versions of Ubuntu and other OSes `/usr/bin/python` is missing. Users may install the `python-is-python3` package but that is not ideal.

v1.2.9

Toggle v1.2.9's commit message
Fix erlfdb_database_set_option `else` case This was detected with more a recent compiler as an uninitialized variable: ``` c_src/main.c: In function 'erlfdb_database_set_option': c_src/main.c:818:9: error: 'option' may be used uninitialized in this function [-Werror=maybe-uninitialized] ```

v1.2.8

Toggle v1.2.8's commit message
Revert "look in /usr/local/bin/ before /usr/local/sbin/" This reverts commit 9ebcc09.

v1.2.7

Toggle v1.2.7's commit message
Use client buggify options on the client Previously we used plain buggify options which are meant for the server. Switch them to the client versions. Can check if it works with: ``` ERL_ZFLAGS="-erlfdb network_options '[client_buggify_enable, {client_buggify_section_activated_probability, 60}, {client_buggify_section_fired_probability, 60}]'" make elixir tests=test/elixir/test/basics_test.exs ```