Skip to content

v0.8.0

Compare
Choose a tag to compare
@kelvinmwinuka kelvinmwinuka released this 02 Jul 17:22
· 113 commits to main since this release
b794a33

Changelog

  • 9c2b4d4 Added JSON and YAML tag for DiscoveryPort config option
  • 2bb6393 Added JSON and YAML tag for DiscoveryPort config option
  • dc9b33b Added ability to set the connection's database in SetConnectionInfo function. Implemented SELECT command to allow TCP connections to select a different database.
  • 850cb7c Added check for readKeys and writeKeys length before checking for authorization in acl module. Added tests for HELLO and SELECT client-server commands
  • 0111c67 Added command length tests for DECRBY command. Updated godoc comment for DecrBy embedded API method.
  • 9e49c35 Added command length tests for DECRBY command. Updated godoc comment for DecrBy embedded API method.
  • 5433b88 Added command length tests for INCRBY command. Renamed INCRBY key func. Return WRONG_ARG_RESPONSE from key funcs when commands are not the correct length.
  • db04465 Added command length tests for INCRBY command. Renamed INCRBY key func. Return WRONG_ARG_RESPONSE from key funcs when commands are not the correct length.
  • cccdd88 Added coverage report
  • d6162b2 Added database support for keyspace methods. Commented cache methods and standalone persistence initialisation until their implementations support databases as well.
  • f4fdc78 Added description for the HELLO command
  • 0bb4ce6 Added emebedded API methods to change Protocol and logical DB. Added comments to SwapDBs and Flush methods.
  • 8ad2714 Added godoc comment for Decr embedded API method.
  • 11450c7 Added godoc comment for Incr embedded API method.
  • a5cfdfd Added multi-database support for loggin and restoring in log engine. Added multi-database support for preamble snapshots and restoration in preamble engine. Added multi-database support for aof engine. Removed buffered channel from log and aof engines. Command logging is now synchronous. Added multi-database support for the raft layer's data replication.
  • 59143b4 Added multi-database support for loggin and restoring in log engine. Added multi-database support for preamble snapshots and restoration in preamble engine. Added multi-database support for aof engine. Removed buffered channel from log and aof engines. Command logging is now synchronous. Added multi-database support for the raft layer's data replication.
  • 295ef9d Added multi-database support in updateKeysInCache method
  • 182195e Added multi-database support to snapshot module
  • a309310 Added mutex for accessing number of nodes in memberlist layer.
  • 9745270 Added placeholders for adding protocol and database version in raft replication flow
  • 93a165e Added support for HELLO command. Load modules build from Dockerfile.dev into instances from docker-compose.yml. Fixed user loading from config file in ACL module.
  • 663c097 Added support for multiple databases on the evictKeysWithExpiredTTL function
  • ddea7ab Added tracking for embedded client connection info. Moved logic to determine which connection info to use into the handleCommand function.
  • 9b897b4 Added wrong args tests for RENAME command.
  • 33d7eb2 Caches and volatile key tracking slices for each database.
  • a3ef0ff Changed noOfNodesMut to RWMutex
  • 85e8a68 Close AOF engine files on shutdown. Close snapshot file after restoring snapshot on startup. Implemented tests for HELLO command in echovault package. Implemented tests for GetServerInfo in echovault package.
  • c37a523 Creating production dockerfile
  • e126dc5 Deleted coverage report
  • 081b4c7 Disabled adjustMemory memory until a multi-database implementation is done. Updated function signatures in handler params for built-in commands and for modules. Disabled snapshots and snapshot restoration until a multi-database implementation is done.
  • 325157a Disabled adjustMemory memory until a multi-database implementation is done. Updated function signatures in handler params for built-in commands and for modules. Disabled snapshots and snapshot restoration until a multi-database implementation is done.
  • 1d9ba10 Fixed typo in keyspace.go
  • 2223d00 Implemented FLUSHDB and FLUSHALL command to clear logical databases.
  • 1a8d231 Implemented FLUSHDB and FLUSHALL command to clear logical databases.
  • 9e4b61f Implemented SWAPDB command handler.
  • 8b8c235 Implemented test for INCR embedded API. Added test cases for incorrect commands length for INCR command. Fixed error checking on INCR commands test. RESP errors will be contained in the response object of the ReadValue method. The error object only contains an error when ReadValue failes.
  • 0246fb2 Implemented test for INCR embedded API. Added test cases for incorrect commands length for INCR command. Fixed error checking on INCR commands test. RESP errors will be contained in the response object of the ReadValue method. The error object only contains an error when ReadValue failes.
  • dcba579 Implemented test for SWAPDB command.
  • f867bca Implemented test for SWAPDB command.
  • 56f0a5c Implemented test for SelectDB and SetProtocol methods
  • ed6a571 Implemented tests for FLUSHDB and FLUSHALL commands
  • f14de2d Implemented tests for FLUSHDB and FLUSHALL commands
  • c4b4285 Initialise volatile key tracker on startup. Create a database if it does not exist when trying to set a value.
  • 591cc7e Merge branch 'main' into issue-64
  • 341b311 Merge branch 'main' into issue-66
  • 75baaa5 Merge pull request #73 from dotslashbit/issue-55
  • 83308ba Merge pull request #74 from dotslashbit/issue-66
  • f3cf011 Merge pull request #75 from EchoVault/fix/cluster-advertise
  • 5e193d4 Merge pull request #76 from DMcP89/50-production-docker-file
  • 5272edd Merge pull request #77 from dotslashbit/issue-63
  • e6b0c88 Merge pull request #78 from dotslashbit/issue-65
  • 67ea631 Merge pull request #79 from dotslashbit/issue-64
  • d7bcc3a Merge pull request #81 from dotslashbit/issue-58
  • b794a33 Merge pull request #83 from EchoVault/feature/multi-database
  • 21aabda Moved AUTH command from the acl module to the connection module. Added echo command to the list of commands that are skipped on ACL authorization.
  • d31cb10 Obtain a read lock on connection info before logging command.
  • 646f5be Re-implemented snapshot.go logic to persist and restore multi-database state
  • 9b0d590 Removed RaftBindPort config. Raft bind address and port are dynamically assigned on startup instead of configured manually. Replaced memberlist-port configuration with discovery-port.
  • 3d549a9 Removed RaftBindPort config. Raft bind address and port are dynamically assigned on startup instead of configured manually. Replaced memberlist-port configuration with discovery-port.
  • 70a1536 Removed duplicate test for INCRBY command
  • a102f90 Removed redeclared keyspace functions
  • 8ecb9ab Restore multi-database state in FSM in the raft layer
  • 13d86df Update README.md
  • 5a04bca Updated Embedded ACL test and enabled memory adjustment after key update
  • ed28ffc Updated INCRBy command handler
  • b98ddcd Updated coverage report
  • d787c6c Updated coverage report
  • 7a8a927 Updated coverage report
  • dcc1b4b Updated coverage report
  • 12b8b4d Updating prod docker file
  • b509e33 added coverage report
  • 51100a1 added coverage report
  • 1965f9b added echo command
  • 95f7175 added godoc comment for INCRBY command
  • fe9344d added godoc comment for INCRBY command
  • 2695920 added test for RENAME command
  • db42cf6 added test for RENAME command
  • 16f1aa4 added test for incrementHandler
  • 728dd86 added test for incrementHandler
  • 60bfd80 added tests
  • 587782b added tests
  • 73d84ea added tests
  • 3b70bb2 feat: INCR command added
  • 1e0625f feat: INCR command added
  • dfb5a0f feat: added DECR command support
  • 7bd98e6 feat: added DECR command support
  • 03f278c feat: added DECRBY command
  • 5f9c9a0 feat: added DECRBY command
  • 876ac0b feat: added DECRBY command
  • 3c338cf feat: added DECRBY command
  • 38ca643 feat: added RENAME command
  • cb8a501 feat:added INCRBY command
  • 10f01c1 fixed a bug on test
  • 2897ee3 fixed a bug on test
  • 90b3d40 fixed a bug on test
  • cebc72b fixed a bug on test
  • 50e88a8 fixed a bug on test
  • 3906568 handled case for key doesn't exist
  • 4dd3aa4 quit