keydb (6:6.3.4-1distribution_placeholder) codename_placeholder; urgency=medium

  * Add keydb_modstatsd, a module for providing keydb stats to a local statsd server. Can be found under src/modules/keydb_modstatsd
  * Fixed FreeBSD compile(Thanks to @bra-fsn)
  * Fixed a bug in s3 bucket config that blocked startup(Thanks to Alexandre Chichmanian)
  * Fixed a bug causing crash if keys command is called after a blocking command (Fixes issues #659, #605, #532)
  * Added proper error checking of replica configs, now KeyDB will throw an error if replica-of config is passed before active-replica or multimaster configs
  * Fixed double free bug in lazy free
  * Added "overload-protect-percent" config, when enabled this will load shed clients whenever CPU usage exceeds configured value
  * Added "availability-zone" config, this can be passed any string which will then be reported by info command
  * Updated eviction logic to account for total system memory availability using sysinfo
  * Fixed a bug where repl-backlog-size config was modified in keydb.conf with the runtime value during config rewrite
  * Fixed a possible deadlock when running CLIENT KILL with large number of clients
  * Fixed a bug where KeyDB would overcommit memory during fork BG save
  * Fixed a bug with disk repl_backlog causing double free
  * Fixed integer overflow issue in the temp rdb file naming (Thanks to @karthyuom)
  * Fixed compile issue with GCC 13.1.1 (Thanks to @michieldwitte)
  * Removed expireset and restored redis expire behaviour
  * Fixed a bug causing forked processes to hang, specifically affecting RDB and AOF(Fixes issues #675, #619)
  * Added "CLUSTER REPLICATE NO ONE" to turn a replica into an empty primary
  * Added RDB-less full sync, can be enabled with config 'enable-keydb-fastsync'
  * Added "flash-disable-key-cache" config to disable key cache which stores every key(but not value) in memory
  * Moved cluster slot to key map to being stored by storage provider, rather than in memory
  * Moved expires to be stored by storage provider, rather than in memory
  * Enabled expiry/eviction from storage provider, previously only data stored in memory could be expired/evicted(Fixes #645 along with the 2 previous updates)
  * Fixed a bug where swapdb result was not recovered after keydb restarts in FLASH mode (Thanks to @karthyuom)
  * Fixed double free bug when fast sync was canceled early
  * Fixed a bug where a temp rdb file with zero bytes is generated in flash mode (Thanks to @karthyuom)
  * Fixed a bug where flash CF options are being reset to default after flushall (Thanks to @karthyuom)(Fixes issue #717)
  * Updated debug reload command to work with flash
  * Added support for KEYDB_PASSWORD env variable(Thanks to @einar-pexip)
  * Compile with flash in Dockerfile(Thanks to @der-eismann)
  * Fix broken redis-cli symlink (Thanks to @pimvandenbroek)
  * Use tini for alpine docker(Thanks to @rofafor)

-- Malavan Sotheeswaran <msotheeswaran@snapchat.com>  Sun, 29 Oct 2023 8:39:21 +0000

keydb (6:6.3.3-1distribution_placeholder) codename_placeholder; urgency=medium

  * To help accelerate our development efforts for KeyDB, this will be the last release containing support for Centos 7, Ubuntu 16.04, Ubuntu 18.04, Debian 9 and 32-bit builds
  * This release contains fixes for 11 issues along with improvements to the KeyDB FLASH feature:
  * Fixed race condition with expireset access (Issue #597)
  * Fixed keys command with lua, and added keydb as an alternative to redis as lua variable to access db (Issue #562 and #594)
  * Fixed hang in aof child (Issue #554)
  * Fixed leaking fds from RDB save (Issue #453 and #584)
  * Added config for S3 RDB load/save (Issue #584)
  * Enabled active defrag during forkless background save to improve average memory efficiency (Issue #460)
  * Fixed crash with fork background save during replication (Issue #567)
  * RocksDB has been updated to v7.9.2
  * Fixed missing slot_to_key map in FLASH cluster mode (Issue #574)
  * Added keyspace notifications for keys loaded from FLASH at startup
  * Fixed race condition in prefetchKeysAsync with FLASH enabled (Issue #571)
  * Fixed integer overflow in rand family of commands(Issue #631, #632, #633)
  * Fixed bad value in hincrbyfloat(Issue #634)
  * Fixed OOM hang in rand family of commands(Issue #635)
  * Added config to limit count of return values in rand family of commands(Issue #636)

-- Ben Schermel <ben@eqalpha.com>  Tue, 18 Apr 2023 10:00:37 +0000

keydb (6:6.3.2-1distribution_placeholder) codename_placeholder; urgency=medium

  * This release contains Beta level support for KeyDB FLASH, new ASYNC commands, latency improvements and a number of bug fixes. 
  * KeyDB FLASH is included as a Beta feature. FLASH allows KeyDB to persist data to the storage medium it is written to, avoiding the need for AOF/RDB files. KeyDB uses rocksdb as the persistent storage provider and can be enabled with config "storage-provider flash /path/to/rocksdb/output". Read more at https://docs.keydb.dev/docs/flash/
  * In addition to GET/MGET, ASYNC support has been added for the following commands: HGET, HMGET, HKEYS, HVALS, HGETALL, HSCAN and can be enable with config "enable-async-commands yes”
  * Packaging support for Ubuntu 22.04 (Jammy) and Debian 12 (Bookworm) has been included with this release
  * Added new soft shutdown feature, can be enabled with config "soft-shutdown yes".
  * If soft shutdown is enabled, instead of shutting down right away, the server will wait until all clients have disconnected, and will reject all new connection attempts.
  * Fixed memory leak with tls certificates when tls allowlist is enabled
  * Fixed bug in rdb load with flash enabled to ensure all dbs are safe to load (previously only checked db[0])
  * Fixed race conditions in rdb load and replication
  * Fixed memory access of rdb file after it should have been deleted
  * Fixed integer overflow bug in flash(Issue #486)
  * Improve TLS latency by queueing new commands before executing instead of after
  * Removed O(n) count of memory usage from info command(replaced by O(1) estimate)
  * Improved latency of clearing large number of flash DBs(Thanks to Paul Chen for this fix)(Issue #516)
  * replaced sprintf with snprintf to avoid potential security bugs
  * Fixed bug where a failed move due to key already existing in move target would result in the key being removed from move source(Thanks to Paul Chen for this fix)(Issue #497)
  * Fixed usage of deprecated OpenSSL api in OpenSSL v>3.0.1(Issue #392)
  * Imported security fixes from Redis (CVE-2023-22458 CVE-2022-35977)
  * Other fixed issues: #480 #477 #454 #452 #303 #425 #492 #541

-- Ben Schermel <ben@eqalpha.com>  Fri, 20 Jan 2023 20:00:37 +0000

keydb (6:6.3.1-1distribution_placeholder) codename_placeholder; urgency=medium

  * This point release contains fixes to bugs related to expires, active-rep, and rdb saving
  * Issues fixed: #419, #422, #428
  * PRs: #426, #429, #431, #433

-- Ben Schermel <ben@eqalpha.com>  Mon, 23 May 2022 20:00:37 +0000

keydb (6:6.3.0-1distribution_placeholder) codename_placeholder; urgency=medium

  * This release open sources KeyDB Enterprise features into the open source project along with PSYNC for active replication
  * Partial synchronization for active replication is introduced
  * MVCC introduced into codebase from KeyDB Enterprise
  * Async commands added: GET, MGET. These will see perf improvements
  * KEYS and SCAN commands will no longer be blocking calls
  * Async Rehash implemented for additional stability to perf
  * IStorage interface added
  * In-process background saving (forkless) to comply with maxmemory setting
  * See v6.3.0 tagged release notes on github for a detailed explanation of these changes

-- Ben Schermel <ben@eqalpha.com>  Wed, 11 May 2022 20:00:37 +0000

keydb (6:6.2.2-1distribution_placeholder) codename_placeholder; urgency=medium

  * Acquire lock in module.cpp to fix module test break
  * Fix usage of nanosleep() on Apple hardware
  * Fix networking deadlock (#183)
  * Remove redundant zfree() in keydb-benchmark
  * Issues resolved: #378, #384

-- Ben Schermel <ben@eqalpha.com>  Sat, 15 Jan 2022 20:00:37 +0000

keydb (6:6.2.1-1distribution_placeholder) codename_placeholder; urgency=medium

  * This release of KeyDB is at parity with Redis 6.2.6. In addition, the following changes were included:
  * Systemd support for release packages 
  * Fixes to buffer overflows in the `BITOP SHIFT` and `CRON` commands 
  * Server times are now computed on a seperate thread to improve performance 
  * Now enforces syslog identity and facility as soon as possible 
  * Removed erroneous use of LOG_... flags when using syslog 
  * Fixed erroneous `#endif` leading to build errors on some platforms 
  * Fixed the incorrect counting of client connections 
  * Issues resolved: #355, #370

 -- Ben Schermel <ben@eqalpha.com>  Wed, 17 Nov 2021 20:00:37 +0000

keydb (6:6.2.0-1distribution_placeholder) codename_placeholder; urgency=medium

  * Removed unused command line options(-a, -d, -P, -r, -q, --csv, -l, -I, -e, --precision, --cluster, --enable-tracking)
  * --ms option changed to --time, added --clients, --host, --port, and --threads options
  * Added keydb-diagnostic-tool
  * Improved test reliability
  * Fixed memory leak in keydb-benchmark
  * Fixed a number of race conditions
  * Fixed OSX build issues
  * Feature parity with Redis 6.2.3
  * Fixed Issues: #323 #325 #276

 -- Ben Schermel <ben@eqalpha.com>  Thu, 12 Aug 2021 20:00:37 +0000

keydb (6:6.0.18-1distribution_placeholder) codename_placeholder; urgency=medium

  * 6.0.18 - This release contains a number of improvements to stability and performance. 
  * Additional tests were added with improvements to existing test reliability
  * Merged Redis 6.0.10 into KeyDB
  * Issues resolved in this release: #214, #222, #238, #257, #273, #276, #285

 -- Ben Schermel <ben@eqalpha.com>  Fri, 26 Mar 2021 16:00:00 +0000

keydb (6:6.0.16-1distribution_placeholder) codename_placeholder; urgency=medium

  * 6.0.16 - This release contains significant performance improvements as well as fixes to the following issues: #234, #236, #233, #207, #229, #231
  * Reduced memory consumption when Active Replication is not used
  * Reduced CPU consumption
  * Improved TLS performance
  * replica-quorum config for multi-master.Intended to be used with "replica-serve-stale-data no", if at least N replicas are connected we will consider our master link up and serve data.
  * Subkey expires performance improvement for big sets

 -- Ben Schermel <ben@eqalpha.com>  Mon, 28 Sep 2020 16:00:00 +0000

keydb (6:6.0.13-1distribution_placeholder) codename_placeholder; urgency=medium

  * 6.0.13 New features added: KEYDB.MEXISTS, REPLICAOF REMOVE, multi-master-no-forward configuration option
  * KEYDB.MEXISTS - return exactly which keys exist in the database not just the count
  * REPLICAOF REMOVE - Remove specific masters in a multi master setup
  * multi-master-no-forward configuration option - Reduce network traffic in mesh topology multimaster setups
  * Redis 6.0.5 feature parity
  * Fixed Issues: 194 Bad directive or wrong number of arguments error on 'lazyfree-lazy-user-del no'; 209 Timeout using modules; 210 Databases are not merged on multi-master sync; 211 rpm packages now signed; 212 rpm file permissions updated

 -- Ben Schermel <ben@eqalpha.com>  Mon, 13 Jul 2020 8:00:00 +0000

keydb (6:6.0.9-1distribution_placeholder) codename_placeholder; urgency=medium

  * 6.0.9 Addressing issues 187 - cpu lockup with subkey expire, 190 - missing sentinel binary in keydb-tools. 

 -- Ben Schermel <ben@eqalpha.com>  Sun, 07 Jun 2020 18:00:37 +0000

keydb (6:6.0.8-1distribution_placeholder) codename_placeholder; urgency=medium

  * This is our first release to fully support all Redis 6.0.4 features, including but not limited to: TLS Support (fully supports multithreading!), Client side caching, RESP 3 Support
  * KeyDB Has also added the following new features: Improved memory efficiency for short strings, Fastlock autotuning, KeyDB.HRENAME (rename a member of a hash)In addition we've spent a lot of time focussing on stability.
  * The following bug fixes are resolved: 150 - Deadlock in ReplicationFeedMonitors, 170 - KeyDB dying via SIGABORT, 180 - crash after setting maxclients via cmd line, 169 - Write performance of a master dropped sharply when a replica is added
  * In addition untracked issues were resolved: Potential deadlock when entering futex sleep, Pub/Sub Async messages may not be sent in a timely manner when load is low, Excessive logging during failed RREPLAY, KeyDB unresponsive handling clients on different threads during RDB load
  * Updated deb package builds to build from source and phasing out init.d. dh_installsystemd from deb helper 11 used where applicable
  * Naming conventions are now updated [ keydbpackage_version-build~distribution_architecture] and master changelog included and maintained
  * keydb-pro-server binary is no longer inluded in the open source package

 -- Ben Schermel <ben@eqalpha.com>  Mon, 1 Jun 2020 8:00:37 +0000

keydb (5:5.3.3-1distribution_placeholder) codename_placeholder; urgency=medium

  * 5.3.3 Updating deb source package, naming conventions, and build scripts.

 -- Ben Schermel <ben@eqalpha.com>  Wed, 06 May 2020 8:00:37 +0000

keydb (5:5.1.12-1chl1distribution_placeholder) codename_placeholder; urgency=medium

  * 5.1.1 update. This update fixes several rare deadlock scenarios. Deadlock detection is also added.  

 -- Ben Schermel <ben@eqalpha.com>  Fri, 25 Oct 2019 8:00:37 +0000


keydb (5:5.1.11-1chl1distribution_placeholder) codename_placeholder; urgency=medium

  * 5.1 release. This release includes subkey expires (EXPIREMEMBER/EXPIREMEMBERAT), with updates to PTTL/TTL accordingly. New OBJECT LASTMODIFIED, BITIOP LSHIFT & BITOP RSHIFT commands. See https://docs.keydb.dev/blog/2019/10/20/blog-post/ for detailed review of release.

 -- Ben Schermel <ben@eqalpha.com>  Mon, 21 Oct 2019 8:00:37 +0000


keydb (5:5.0.1-1chl1distribution_placeholder) codename_placeholder; urgency=medium

  * Arm build now included for bionic package

 -- Ben Schermel <ben@eqalpha.com>  Wed, 21 Aug 2019 22:58:37 +0000


keydb (5:5.0.0-1chl1distribution_placeholder) codename_placeholder; urgency=medium

  * Initial release of KeyDB PPA. This PPA was originally derived from https://launchpad.net/~chris-lea/+archive/ubuntu/redis-server

 -- Ben Schermel <ben@eqalpha.com>  Wed, 21 Aug 2019 2:58:37 +0000
