What's Changed
- Adds support to WATCH for key updates by @JyotinderSingh in #116
- Initial SQL parsing support for QWATCH. by @JyotinderSingh in #119
- Update LICENSE.md to BSL 1.1 by @arpitbbhayani in #121
- Supporting wildcard FROM, ORDER BY $value and LIMIT in DSQL by @JyotinderSingh in #124
- Enables end to end QWATCH flow using DSQL + Improved test coverage. by @JyotinderSingh in #125
- Setting up optional infra for devccontainer in vscode by @ayush571995 in #127
- Fix unreachable code in storm set function by @Thedarkmatter10 in #114
- [Fixes] #95 Added exit status and log message when user tries to spin a new instance on same port. by @reapedjuggler in #107
- Updating README with the value proposition by @arpitbbhayani in #123
- Issue templates updated by @arpitbbhayani in #129
- Groundwork for Integration Tests by @arpitbbhayani in #131
- Bind socket with SO_REUSEADDR to reuse port if it is in TIME_WAIT state by @arpitbbhayani in #134
- #132 : Removed parallel execution from TestUpdateIndexes and TestGetOrCreateBloomFilter by @yashs360 in #133
- Added benchmarks for queueint - #68 by @zeu5 in #130
- Add CI testing as part of push to master branch and PRs. Avoid accidental bad code merges by @yashs360 in #135
- Clean sweep to fix all existing lint errors. For best experience please merge this after linter PR (#136) is merged. by @yashs360 in #137
- introducing linter for new code changes only by @yashs360 in #136
- #149 : Add list command for dicedb by @yashs360 in #150
- Improve QWATCH test by @JyotinderSingh in #154
- Add support for HELLO command. by @JyotinderSingh in #155
- Run integration tests on GitHub Actions by @JyotinderSingh in #156
- Enable linting for entire codebase by @yashs360 in #152
- Qwatch by @JyotinderSingh in #161
- docs: update README.md by @eltociear in #160
- Use sync.Map for watching queries by @JyotinderSingh in #171
- Disable running integration tests in github workflows by @gauravsarma1992 in #168
- Remove query from watchlist if no clients are watching it. by @JyotinderSingh in #172
- Ensure thread-safe access to store and keypool by @JyotinderSingh in #173
- #142 - Support for byte array by @yashs360 in #174
- Improve QWATCH tests to validate functionality with multiple subscribers. by @JyotinderSingh in #175
- pulumi script to spinup and setup any AWS VM #139 by @Maveric-k07 in #159
- Standalone setup for Pulumi by @arpitbbhayani in #178
- #142 :missed adding benchamrk for bitcount for byte array. fixed by @yashs360 in #176
- Added wildcard matching for DSQL query by @Dev79844 in #169
- #182: Refactor command handling for maintainability by @kakdeykaushik in #170
- #145 : Added support for COMMAND COUNT command by @VipinRaiP in #153
- Issue #90 Fix AOF file permissions by @gauravsarma1992 in #186
- Add WHERE Clause Support to DSQL Parser and Executor by @JyotinderSingh in #187
- Format config and add make target for formatter by @vmanikes in #192
- Add support for JSON by @Maveric-k07 in #181
- Executer benchmarking #193 by @AshwinKul28 in #211
- feat:add deduceTypeEncoding unit test by @codeErrorSleep in #199
- #183: Support for signed integer dencoding by @Vsareen0 in #216
- docs: update bug_report.md by @eltociear in #217
- #147: Add support for COMMAND GETKEYS command by @Yonggiee in #224
- #205: Add support for XX in SET command by @sanuj96 in #220
- Add the test cases for INCR commmand by @FuncGuy in #97
- fixed readBulkString to handle RESP_NIL by @SyedMa3 in #214
- #201: Fix for expired key crash by @apoorvyadav1111 in #209
- #196: Fixed DiceDB server reconnection error. by @cam4phor in #208
- #221: Test Case for MinInt64 by @Vsareen0 in #232
- #223: Added sync.Pool for thread safety by @kushal0511-not in #231
- #143: Support: Byte Array DataType and Operations by @MohitVachhani in #180
- #222: Added Benchmark for negative number and close to MinInt64, MaxInt64 by @Vsareen0 in #230
- #233: Support for live reload by @AshwinKul28 in #234
- feat: [GH-203] Add support for PXAT in SET command by @lucifercr07 in #237
- feat: support KEYS command by @mingo023 in #197
- #166: Adds JSONPath Support by @Maveric-k07 in #235
- Add support for Basic Auth by @gauravsarma1992 in #179
- Add support for EXAT in SET command by @colommar in #218
- Added support NX for SET command by @chanducheryala in #227
- adding px option for SET command by @SyedMa3 in #236
- Added support for NX | XX in JSON.SET command by @vaibh1297 in #228
- optimize docker image by @xprgv in #195
- FIX: Removed old cases -> Added EXAT + new tests by @apoorvyadav1111 in #247
- Fixes in incr test and set test by @apoorvyadav1111 in #264
- added mset command by @SyedMa3 in #261
- JSON.SET NX|XX invalid options handling by @vaibh1297 in #260
- feat:add persist cmd by @codeErrorSleep in #265
- Reset datastores before every benchmark test by @gauravsarma1992 in #270
- #267: Emit
WatchEvent
fromDelByPointer
function by @raknay in #268 - fixes failing TestJSONSetWithInvalidJSON by @Maveric-k07 in #286
- Add support for command DECR by @rleungx in #287
- New feature: EXISTS k1, k2..Kn by @apoorvyadav1111 in #245
- #271: fixed MsetCmdMeta to support COMMAND getkeys by @SyedMa3 in #269
- #280: Add support for DECRBY by @kushal0511-not in #294
- #251: Added support for MGET command. by @chanducheryala in #292
- #185: Added test cases for expired keys in StackRef.Pop() method by @kushal0511-not in #273
- #253: added RENAME Command by @rkarthick15 in #262
- Implement functional locking strategy by @JyotinderSingh in #295
- #274: Added support for GETDEL command. by @raghavbabbar in #293
- #298: Acquire write lock for GET call by @raghavbabbar in #299
- #79: Added test case for DISCARD command by @Rits1272 in #297
- #184 : Test cases and benchmarking for queueref remove by @VipinRaiP in #229
- #198: Adding unit tests for eval.go file by @lucifercr07 in #210
- #73: testcase for DEL command by @Rits1272 in #302
- #275: Feature added: getex command with args support by @apoorvyadav1111 in #290
- introduced linter: golangci by @AshwinKul28 in #313
- Update broken links for golangci by @AshwinKul28 in #315
- Added support for PTTL command by @apoorvyadav1111 in #308
- fixed minor typo in main.go file by @Emekaony in #317
- Closes #277 Support for COPY command by @srivastava-yash in #305
- [Dice-206]: support
KEEPTTL
option forSET
command by @kolharsam in #318 - Feature added support for TOUCH and OBJECT IDLETIME by @apoorvyadav1111 in #320
- fix:correct the JSON.SET command Arity by @jujiale in #321
- Update linter.yml by @AshwinKul28 in #327
- Added stubbed time for tests by @gauravsarma1992 in #324
- #189 Add JSON Support to where clause by @YahyaHaq in #300
- Improves JSON WHERE clause evaluation performance by @JyotinderSingh in #337
- AUTH error message made consistent with Redis by @arpitbbhayani in #331
- #184 : Fixed incorrect benchmark iterations for QueueRef by @VipinRaiP in #329
- #284: Add support for command
EXPIRETIME
by @raknay in #325 - #244 feat: deque for [l/r][push/pop] by @NOS-AE in #311
- #278: Add support for command
DBSIZE
by @raknay in #328 - #342: feat: add support for json.type command by @jujiale in #344
- #283: Add support for command EXPIREAT by @ashwaniYDV in #338
- #117 - (refactor) Multi threading Pre-req - Abstract out Store. And fix the hell fire of all test cases breaking by @yashs360 in #339
- #359: Fix type casting logic for SET and GET commands. by @JyotinderSingh in #363
- Fixes QWATCH response format, executor type inference logic, test cases by @JyotinderSingh in #366
- adds make target for linter by @Maveric-k07 in #364
- #346: Uses KeySpaceStat for evaluating DBSIZE to improve performance. by @raknay in #369
- #361: Added unit test and integration test for EXPIRE, EXPIRETIME commands by @ashwaniYDV in #362
- #248: Standardize error messages across codebase by @lucifercr07 in #288
- Fix #374 - Fetching the key before renaming by @arpitbbhayani in #376
- Type Deduction logic for integers and related fixes by @JyotinderSingh in #372
- Temporarily assigning ID to every incoming command by @arpitbbhayani in #384
- Fixed flaky tests due to json ordering by @VedWhat in #365
- Run complete test suite (unit + integration) on merge to master. by @yashs360 in #368
- fix:keep JSON.TYPE consistent with redis by @jujiale in #388
- Run complete test suite on PRs by @yashs360 in #392
- Added support for QUNWATCH command by @VedWhat in #395
- memtier benchmark and load tests preset by @Dev79844 in #402
- #143: Add support for BITPOS command by @soumya-codes in #387
- #350: moved from the unsafe pointer to the string type for the store by @AshwinKul28 in #370
- Added support for FLUSHDB command by @ashwaniYDV in #390
- #276: GETSET command implementation by @lucifercr07 in #377
- Added SADD, SREM, SMEMBERS, SCARD, SINTER, SDIFF by @apoorvyadav1111 in #343
- #371: feat: add support for command [JSON.CLEAR] by @jujiale in #405
- #355: FEAT: Added support for additional options in EXPIRE and EXPIREAT. by @raghavbabbar in #403
- #285: Fix: STACKREFLEN and QUEUEREFLEN is not aware of the deletion of key by @kushal0511-not in #393
- Reorganize async server code by @JyotinderSingh in #410
- #411: Add asserts checking non-set commands: addresses #411 by @apoorvyadav1111 in #413
- #255: Implement
HSET
command by @kolharsam in #373 - Move QWATCH logic to QueryWatcher by @JyotinderSingh in #416
- The new ID implementation by @arpitbbhayani in #396
- Switching the store to use SwissTable instead of HashTable by @arpitbbhayani in #433
- A new HashTable implementation by @arpitbbhayani in #429
- #385: fix(benchmark): Reset store for each iteration in BenchmarkEvalMSET by @sbshah97 in #420
- #419: feat: add support for command [JSON.DEL] by @jujiale in #428
- #386: Fix SETBIT command for encoding by @kushal0511-not in #409
- Adds ShardThread and ShardManager by @JyotinderSingh in #417
- #149: feat: Added COMMAND LIST cmd by @kakdeykaushik in #418
- #444: Migrated from built-in go map to swissTable for set data as per #433 by @apoorvyadav1111 in #443
- #238: PFADD/PFCOUNT implementation by @lucifercr07 in #422
- #138: TCL tests integration in Dice by @AshwinKul28 in #435
- Revert "#138: TCL tests integration in Dice" by @AshwinKul28 in #452
- Implements caching for QWATCH queries to improve performance by @JyotinderSingh in #447
- Remove query-watcher dependency from store by @soumya-codes in #457
- Adds JSON support to ORDER BY clause for DSQL queries. by @JyotinderSingh in #453
- #257: Feat: Added support for HGETALL by @raghavbabbar in #431
- Fix integer type handling inconsistencies in sql executor by @JyotinderSingh in #459
- Lots of removal! Mostly Keypool and few commands related to the stackref and queueref by @AshwinKul28 in #460
- Reverted set data structure to map by @apoorvyadav1111 in #461
- Added realtime leaderboard demo using QWATCH by @JyotinderSingh in #464
- Avoid logging WARN for disconnections initiated from clients by @lucifercr07 in #463
- Leaderboard demo by @arpitbbhayani in #465
New Contributors
- @ayush571995 made their first contribution in #127
- @Thedarkmatter10 made their first contribution in #114
- @reapedjuggler made their first contribution in #107
- @yashs360 made their first contribution in #133
- @zeu5 made their first contribution in #130
- @eltociear made their first contribution in #160
- @gauravsarma1992 made their first contribution in #168
- @Maveric-k07 made their first contribution in #159
- @Dev79844 made their first contribution in #169
- @kakdeykaushik made their first contribution in #170
- @VipinRaiP made their first contribution in #153
- @vmanikes made their first contribution in #192
- @AshwinKul28 made their first contribution in #211
- @Vsareen0 made their first contribution in #216
- @Yonggiee made their first contribution in #224
- @sanuj96 made their first contribution in #220
- @FuncGuy made their first contribution in #97
- @SyedMa3 made their first contribution in #214
- @cam4phor made their first contribution in #208
- @kushal0511-not made their first contribution in #231
- @MohitVachhani made their first contribution in #180
- @mingo023 made their first contribution in #197
- @colommar made their first contribution in #218
- @chanducheryala made their first contribution in #227
- @vaibh1297 made their first contribution in #228
- @xprgv made their first contribution in #195
- @raknay made their first contribution in #268
- @rleungx made their first contribution in #287
- @rkarthick15 made their first contribution in #262
- @raghavbabbar made their first contribution in #293
- @Rits1272 made their first contribution in #297
- @Emekaony made their first contribution in #317
- @srivastava-yash made their first contribution in #305
- @kolharsam made their first contribution in #318
- @YahyaHaq made their first contribution in #300
- @NOS-AE made their first contribution in #311
- @VedWhat made their first contribution in #365
- @sbshah97 made their first contribution in #420
Full Changelog: 0.0.1...0.0.2