-
Notifications
You must be signed in to change notification settings - Fork 1.2k
DATAREDIS-417 - ScanCursor throw " java.util.NoSuchElementException". #154
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Conversation
when scan big key with "match" options, redis server continuous return empty result,ScanCursor throw " java.util.NoSuchElementException".
Any idea when this fix will be in a release build? I am affected by this bug. |
+1; we're affected also |
tried to reproduce the error scanning 100.000, 661.607, 1.000.000, 1.000.001 and 1.299.827 keys in a Redis 3.0.3 instance with jedis 2.7.3 but did not come accross the mentioned exception. Any chance you can point me at a breaking piece of sample code? |
Were you using a connection pool or single connection? The code is pretty simple to get it to break. And it does not happen if you use a connection pool... |
@christophstrobl we reproduce this using a namespace of 12M keys of HSETs. Using count < 1000 will reproduce it. Jedis 2.7.3, spring-data-redis 1.6.0.RELEASE, commons-pool2 2.4.2 don't know if this helps - you can " |
@theWizK, @thanosa75 used a pool before - disabling did not change the result. will try different options for |
I think I have 2.8.3... I'll get the versions of client as well for you and a code sample if I can dig them back out. |
@theWizK that would be awesome. thanks! |
@christophstrobl we use 3.0.4 on a simple configuration - no replication |
@christophstrobl see this gist (https://gist.github.com/thanosa75/a16a011082167496ead8) for the setup and you need to execute the code from this link (mvn spring-boot:run on this project: https://dl.dropboxusercontent.com/u/51551585/dataredis417repro.zip) to get it reproduced. |
@thanosa75 thanks - will have a look tomorrow. |
@thanosa75 I see now. thanks! |
@christophstrobl Hi,this is my sample code that can reproduce error:
|
@oudb thanks! would you (if you haven't done so yet) please sign the Spring ICLA form and add your CLA Number and name as a comment either here or to DATAREDIS-417. I can then take it from here - failing tests that get fixed by this PR are in place already. |
…pty scan result. ScanCursor now retriggers SCAN command for results having a new cursorId but no actual values. This avoids NoSuchElementException for server calls like: scan 0 match key*9 1) 1966080 2) (empty list or set) Original Pull Request: #154 CLA Number: 143520151016081625 (Duobiao Ou)
…pty scan result. ScanCursor now retriggers SCAN command for results having a new cursorId but no actual values. This avoids NoSuchElementException for server calls like: scan 0 match key*9 1) 1966080 2) (empty list or set) Original Pull Request: #154 CLA Number: 143520151016081625 (Duobiao Ou)
…pty scan result. ScanCursor now retriggers SCAN command for results having a new cursorId but no actual values. This avoids NoSuchElementException for server calls like: scan 0 match key*9 1) 1966080 2) (empty list or set) Original Pull Request: #154 CLA Number: 143520151016081625 (Duobiao Ou)
thanks - merged to master and back ported to 1.5.x and 1.6.x |
still met with this problem in 1.6.1 |
when scan big key with "match" options, redis server continuous return empty result,ScanCursor throw " java.util.NoSuchElementException"