- Package:
- redis-server
- Source:
- redis
- Description:
- Persistent key-value database with network interface
- Submitter:
- Benjamin Kuhl
- Date:
- 2021-05-06 16:57:03 UTC
- Severity:
- normal
The actually version has a bug. I found it out by using nodejs with the redis package on my host.
Before the redis update, everything worked fine. This is the error:
/app/node_modules/redis-parser/lib/parser.js:179
return new ReplyError(string)
^
ReplyError: ERR syntax error
at parseError (/app/node_modules/redis-parser/lib/parser.js:179:12)
at parseType (/app/node_modules/redis-parser/lib/parser.js:302:14) {
command: 'SET',
args: [
'2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15',
'2',
'KEEPTTL'
],
code: 'ERR'
}
I set a key value with a lifetime of 15 seconds, so the value will be deleted after 15 seconds. After
setting it i change the value several times before end of life, without resetting the lifetime. As in
the error my syntax seems to be wrong, but it works on every other redis-server version. And the syntax
is from the documentation, so its correct. This is the code line
const ok = await RedisServer.setValue(key, value, 'KEEPTTL');
I solved the problem by using the redis-server version from the backport.
Hi Benjamin, I note that you write it works with the version in backports, but can you let me know whether it works in the previous version in buster -- ie. 5:5.0.3-4+deb10u2. I'd like to track down exactly where this regresses. Regards,
Hi Benjamin, I note that you write it works with the version in backports, but can you let me know whether it works in the previous version in buster -- ie. 5:5.0.3-4+deb10u2. I'd like to track down exactly where this regresses. Regards,
I cant remember exactly, but the last days there was an update for redis-server and before this update it worked perfect. Cant say directly which version it was, but it was the version before the actually one. Am 03.05.21 um 11:52 schrieb Chris Lamb:
Hi Benjamin, No problem. I'm trying to reproduce this locally -- looking at the traceback in your original bug report, are you doing the equivalent of: $ redis-cli set "2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15" "2" KEEPTTL ? You mention "I set a key value with a lifetime of 15 seconds" but I don't see that in the traceback. Regards,
At an earlier point im setting the kay-value like this, const ok = await RedisServer.setValue(ip, '1', 'EX', 15); Where the variable ip is something like "2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15" This seems to work, but i only get the error when im changing the key-value as i wrote. When im trying to access the entry and change the number '1' to '2' and set 'KEEPTTL'. Am 05.05.21 um 17:16 schrieb Chris Lamb:
Hi Benjamin, So, to confirm, you are running the equivalent of: $ redis-cli set "2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15" "1" EX 15 $ redis-cli set "2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15" "2" KEEPTTL ... with the second command failing? If so, although I can reproduce this error using 3:3.2.6-3+deb9u4, I can _also_ reproduce it using deb9u3. Again, just trying to track down the regression... Regards,
I think the actually version is 5.0.3-4+deb10u3!? I had this error with Debian Buster some Days ago. Am 06.05.21 um 13:50 schrieb Chris Lamb:
Hi Benjamin, mistake -- my apologies. However, I still get the same "ERR syntax error" when I run: $ redis-cli set "2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15" "1" EX 15 $ redis-cli set "2a02:908:531:e6e0:42b0:76ff:fea4:d7cb, 162.158.93.15" "2" KEEPTTL ... on both 5:5.0.3-4+deb10u2 and 5:5.0.3-4+deb10u3. Regards,