As Version is encoded into the rendered Helm manifests,
They need to be updated with each release so that these
files are in sync with the latest release version.
This PR updates the golang dependencies in the render test
to remove the security alerts. The security alerts should
not be a worry as its just unit test code.
fix:Return an error, instead of crashing, for requests trying to rename a key to the same key.
Fixes#850
---------
Co-authored-by: Shahar Mike <shmike@google.com>
Store script parameters for each script that allow configuring it's transactions multi mode. They can be configured either for a specific scripts with `SCRIPT CONIFG <sha> [params...]` or changed globally as defaults with `default_lua_config`.
The current supported options are `allow-undeclared-keys` and `disable-atomicity`. Based on those flags, we determine the correct multi mode. `disable-atomicity` allow running in non-atomic mode, whereas being atomic and enabling `allow-undeclared-keys` requires the global mode.
This updates all the namespace fields in the Helm chart to use the
`Release.Namespace` template variable. This is the recommended way to
do it in Helm 3, and allows the chart to be installed in a namespace
as set by the user, without having to modify the chart or use
`--namespace` in `kubectl`.
This commit adds a new `golden_test.go` file into the helm chart
which essentially renders the chart with a set of values and
compares that with the expected golden file, and errors if
they don't match.
This builds on the existing CI values files in `ci/` directory. As
this is the first time, The golden files are rendered and added. This
means for all the future changes, The golden files can be updated
by running `go test -update` and the CI will fail if the golden files
are not updated. By doing this, Both the committer and reviewer
can be sure that the changes are intentional, without having to render
the chart manually.
docs(dashtable): Fix image URL for expiration
Replaces the `expiration.svg` image with a working URL.
Signed-off-by: Tarun Pothulapati <tarunpothulapati@outlook.com>
The format as follows: `HSETEX key seconds field value [field value ...]`
This allows adding hset members with expiration time in seconds.
Fixes#687
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
Specifically, provide a total length over all shards of pending txs.
Also, provide number of "free" transactions pending in the queue -
those that could progress immediately but do not because
they are not first in the queue.
Signed-off-by: Roman Gershman <roman@dragonflydb.io>
fix(zset): Make count optional for zpop{min,max}
The commands should allow count to be optional and
default to 1 as per the official redis command documentation.
Additionally update command flags to write + fast
Signed-off-by: Ali-Akber Saifee <ali@indydevs.org>
feat(server): Basic multi transaction modes
This commit adds the notion of multi transaction modes that allow controlling the execution and
locking behaviour of multi transactions.
In general, there are four modes:
- GLOBAL: all commands run within a global transaction. There is no need for recording locks. Lua scripts can theoretically run with undeclared keys.
- LOCK_AHEAD: the transaction locks all keys ahead likewise to a regular transaction and schedules itself.
- LOCK_INCREMENTAL: the transaction determines what shards it has keys in and schedules itself on those shards, but locks only when accessing a new key. This allows other transactions to run ooo alonside with a big multi-transaction that accesses a contended key only at its very end.
- NON_ATOMIC: all commands run separately, no atomicity is provided, likewise to a pipeline
This commit only adds support for the first 3 modes to EXEC commands.
Signed-off-by: Vladislav Oleshko <vlad@dragonflydb.io>
* Ditch docker whcih is complex on CI in favour of local redis binary
Signed-off-by: ashotland <ari@dragonflydb.io>
* Fix typo
Signed-off-by: ashotland <ari@dragonflydb.io>
* Wait for sentinel termination
Signed-off-by: ashotland <ari@dragonflydb.io>
---------
Signed-off-by: ashotland <ari@dragonflydb.io>
* feat(server): Enable overriding --requirepass form env var
Signed-off-by: ashotland <ari@dragonflydb.io>
* Change precednce order
Elaborate test
Signed-off-by: ashotland <ari@dragonflydb.io>
* Update helm chart to support passowrd from secret
Using recently added capability of setting dragonfly passowrd with the
DFLY_PASSWORD environment variable
Signed-off-by: ashotland <ari@dragonflydb.io>
* rename to existingSecret* + CI file
Signed-off-by: ashotland <ari@dragonflydb.io>
* fix typo in comment
Signed-off-by: ashotland <ari@dragonflydb.io>
---------
Signed-off-by: ashotland <ari@dragonflydb.io>