Miscommunication with Redis server


I have recently encountered a problem after deploying Chirpstack’s latest version. This is what I see:

in chirtstack-network-server (version 3.14.0) log:
level=error msg="get frame-log for device error" error="redis stream error: ERR unknown command 'xread'"

in chirpstack-application-server (version 3.16.0) log:
level=error msg="get event-log for device error" error="redis stream error: ERR unknown command 'xread'"

I have the latest Redis server version (i.e. 4.0.9) that is available for my Ubuntu 18.04 release; and it seems this Redis server version doesn’t support ‘xread’; apparently only higher versions do.

(Inside the application’s config file at ../chirpstack-application-server/chirpstack-application-server.toml it is mentioned:
"Please note that Redis 2.6.0+ is required")

Considering that upgrading to Redis version 5.0.7 on Ubuntu 18.04 is not possible, or at least not recommended (Ubuntu packages), I appreciate it very much if you could kindly let me know your opinion on how to address this issue.

Many thanks in advance for your help and especially for your excellent work.

1 Like

gone through the same. Only Ubuntu 20 worked as it has redis 5.

let me know if you see downlink messages in the frame logs because i dont → see other topic

It was mentioned in the release notes that the latest version requires Redis 5+. This was also updated in the documentation, but I missed that it was also documented in the config file. Anyway, Redis 5+ is required.

The same here, I couldn’t see downlink messages.
Bypassed the problem by downgrading the application-server and network-server to 3.12.2 and 3.10.0, respectively.

Thank you for your reply.

@brocaar seems there is some bug for ppl coming from old versions not being able to see downlink messages in the application. I can see them being send out but the queue is not emptied nor do downlinks show up in the counters

I encounter the same issue as described above error=“redis stream error: ERR unknown command ‘xread’” even with redis server 5:
Redis server v=5.0.13 sha=00000000:0 malloc=libc bits=32 build=281d97d4623e3baf.
Tried to downgrade the application-server and network-server as suggested above but then the server wouldn’t start so now I am back on version 3.17.0 and 3.12.2. However the problem remains with the redis stream error.

Are you sure there isn’t an other Redis instance running? Redis 5 does implement the XREAD command. Please refer to XREAD – Redis for more information.

Thanks a lot for your reply. I found an “old” ver. 3 instance running and after some cleaning and reinstallation of 5.013 things are partly working. I say partly because now I can monitor the Lorawan frames live on the gateway via the web interface where I see the devices transmitting data, however the data is not processed by the server and no longer available on mqtt. Do I need to reinstall the Application and devices?
In the network server log I see the error: level=error msg=“uplink: processing uplink frame error” ctx_id=b711d3d6-dba8-432c-814b-55e39546ce04 error=“get device-session error: object does not exist”

I tried to remove the application including the devices (only 3) and the adding them again, but the problem remains. I see the data coming in on the Gateway, but the network/application server does not process the data.

Turned out I had to reset the devices so they rejoined the server. Now it works! Thanks for the support.