RedisJSON / RedisJSON2

Rust based RedisJSON implementation - Deprecated and moved to RedisJSON/RedisJSON
https://redisjson.io
Other
54 stars 4 forks source link

Crash on json.get #80

Closed gkorland closed 4 years ago

gkorland commented 4 years ago

When using $ symbol redis crashed (without it works fine)

127.0.0.1:6379> json.set user2 . '[{"code":"1"}, {"code":"2"}]'
OK
127.0.0.1:6379> json.get user2 ".[?(@.code==\"2\")]"
"{\"code\":\"2\"}"
127.0.0.1:6379> json.get user2 "$.[?(@.code==\"2\")]"
Error: Connection reset by peer
=== REDIS BUG REPORT START: Cut & paste starting from here ===
1:M 10 Feb 2020 10:20:13.337 # Redis 5.0.7 crashed by signal: 11
1:M 10 Feb 2020 10:20:13.337 # Crashed running the instruction at: 0x7f90f4a1c8fc
1:M 10 Feb 2020 10:20:13.337 # Accessing address: (nil)
1:M 10 Feb 2020 10:20:13.337 # Failed assertion: <no assertion failed> (<no file>:0)

------ STACK TRACE ------
EIP:
/usr/lib/redis/modules/libredisjson.so(+0xa98fc)[0x7f90f4a1c8fc]

Backtrace:
redis-server *:6379(logStackTrace+0x32)[0x555f4530c572]
redis-server *:6379(sigsegvHandler+0x9e)[0x555f4530cc4e]
/lib/x86_64-linux-gnu/libpthread.so.0(+0x12730)[0x7f90f576b730]
/usr/lib/redis/modules/libredisjson.so(+0xa98fc)[0x7f90f4a1c8fc]
/usr/lib/redis/modules/libredisjson.so(+0xa9d85)[0x7f90f4a1cd85]
/usr/lib/redis/modules/libredisjson.so(+0x9e3e7)[0x7f90f4a113e7]
/usr/lib/redis/modules/libredisjson.so(+0x8fc5c)[0x7f90f4a02c5c]
/usr/lib/redis/modules/libredisjson.so(+0x8fcb8)[0x7f90f4a02cb8]
/usr/lib/redis/modules/libredisjson.so(+0x8fab3)[0x7f90f4a02ab3]
/usr/lib/redis/modules/libredisjson.so(+0x93db2)[0x7f90f4a06db2]
/usr/lib/redis/modules/libredisjson.so(+0x8cc45)[0x7f90f49ffc45]
/usr/lib/redis/modules/libredisjson.so(+0x8cc91)[0x7f90f49ffc91]
/usr/lib/redis/modules/libredisjson.so(+0x8f7b0)[0x7f90f4a027b0]
/usr/lib/redis/modules/libredisjson.so(+0x8f8dc)[0x7f90f4a028dc]
/usr/lib/redis/modules/libredisjson.so(+0x9d2bb)[0x7f90f4a102bb]
/usr/lib/redis/modules/libredisjson.so(+0x7b5ce)[0x7f90f49ee5ce]
/usr/lib/redis/modules/libredisjson.so(+0x7b465)[0x7f90f49ee465]
/usr/lib/redis/modules/libredisjson.so(+0x35dce)[0x7f90f49a8dce]
redis-server *:6379(RedisModuleCommandDispatcher+0x54)[0x555f45338d14]
redis-server *:6379(call+0x9b)[0x555f452c835b]
redis-server *:6379(processCommand+0x51e)[0x555f452c8c1e]
redis-server *:6379(processInputBuffer+0x171)[0x555f452d8e61]
redis-server *:6379(aeProcessEvents+0x101)[0x555f452c2311]
redis-server *:6379(aeMain+0x2b)[0x555f452c271b]
redis-server *:6379(main+0x4ca)[0x555f452bf57a]
/lib/x86_64-linux-gnu/libc.so.6(__libc_start_main+0xeb)[0x7f90f55bc09b]
redis-server *:6379(_start+0x2a)[0x555f452bf7da]

ref #79

gkorland commented 4 years ago

ref https://github.com/freestrings/jsonpath/issues/34 ref https://github.com/rust-lang/hashbrown/issues/143

gkorland commented 4 years ago

dep on https://github.com/RedisLabsModules/redismodule-rs/pull/60

pavelsr commented 4 years ago

Please update redislabs/redisjson2 image

gkorland commented 4 years ago

@pavelsr we'll release a new release soon, meanwhile you can use the edge tag - redislabs/redisjson2:edge

gkorland commented 4 years ago

@pavelsr a new build 0.9.2 was released

pavelsr commented 4 years ago

Thanks, confirm that issue fixed