ioredis
ioredis copied to clipboard
`undefined` key is treated as `''`
Current Behavior
ioredis
will treat a key of undefined
the same as the key ''
, meaning you can call redis.set(undefined, 'some value')
and later use redis.get('')
to get 'some value'
from the redis instance.
Expected Behavior
ioredis
either throws an error that undefined
was passed when there should be an explicit string or Buffer, or it is documented that ioredis
will automatically convert the undefined
to ''
.
Minimum Reproduction Repository
https://github.com/jmcdo29/ioredis-undefined-key
Reproduction steps
git clone [email protected]:jmcdo29/ioredis-undefined-key.git
cd ioredis-undefined-key
pnpm i
docker compose up -d
node index.js
docker compose down
Observe the assertion failure from notEqual()
in the getBlankStringKey
method.