dice icon indicating copy to clipboard operation
dice copied to clipboard

Add support for `JSON.GET.WATCH` command

Open JyotinderSingh opened this issue 1 year ago • 10 comments

Add support for reactive queries on the existing JSON.GET command by introducing JSON.GET.WATCH.

This command should send push-responses to subscribed clients whenever the data inside the respective hash set changes.

As a part of this feature, you are also required to add support for the same to the dicedb-go SDK inside the watch_command.go file.

Reference

  1. You may refer to #1047 to understand the changes required to support this command.
  2. #924 provides more background on the feature's underlying implementation (but may not be directly relevant to this issue)

Testing

  1. Ensure integration tests are added, you can refer to existing .WATCH integration tests.
  2. Integration tests should include both resp tests and SDK tests.

JyotinderSingh avatar Oct 17 '24 14:10 JyotinderSingh

@JyotinderSingh I would like to work on this

arbha1erao avatar Oct 17 '24 14:10 arbha1erao

@JyotinderSingh I would like to work on this

Assigned.

JyotinderSingh avatar Oct 17 '24 14:10 JyotinderSingh

@JyotinderSingh

I'm trying to use ZRANGE.WATCH as per the reference in Adds support for ZRANGE.WATCH #1047, but I'm getting the error:

ERR unknown command 'ZRANGE.WATCH', with args beginning with: zrangewatchkey 0 -1 REV WITHSCORES

I'm on the latest branch and have tested it in both the CLI and the Go SDK, but the command isn’t recognized. Am I missing anything here to get this working?

arbha1erao avatar Oct 20 '24 09:10 arbha1erao

@JyotinderSingh

I'm trying to use ZRANGE.WATCH as per the reference in Adds support for ZRANGE.WATCH #1047, but I'm getting the error:

ERR unknown command 'ZRANGE.WATCH', with args beginning with: zrangewatchkey 0 -1 REV WITHSCORES

I'm on the latest branch and have tested it in both the CLI and the Go SDK, but the command isn’t recognized.

Am I missing anything here to get this working?

Please run the server in multithreaded mode. Use go run main.go --enable-multithreading=true

JyotinderSingh avatar Oct 20 '24 10:10 JyotinderSingh

are you still working on this issue? @arbha1erao

tarun-29 avatar Nov 08 '24 15:11 tarun-29

Can I please take this up @JyotinderSingh @tarun-29 ?

shashank-priyadarshi avatar Nov 18 '24 00:11 shashank-priyadarshi

Can I please take this up @JyotinderSingh @tarun-29 ?

Assigned

JyotinderSingh avatar Nov 19 '24 14:11 JyotinderSingh

/assign

hrishikeshdkakkad avatar Nov 22 '24 09:11 hrishikeshdkakkad

@hrishikeshdkakkad I have started on this. In case I need help, I will break it down and assign a subtask to you.

shashank-priyadarshi avatar Nov 25 '24 09:11 shashank-priyadarshi

@shashank-priyadarshi Hey are you working on this issue still ? need help ? i can take it, thanks

akhilk2802 avatar Dec 15 '24 19:12 akhilk2802