disk91 / helium-chirpstack-community

Glue between helium and chirpstack
20 stars 6 forks source link

[FEATURE] Chirpstack v4.7.0 compatibility (SKFs stored in postgres now) #96

Closed vkynchev closed 3 months ago

vkynchev commented 4 months ago

Hi @disk91, today I've updated to chirpstack 4.7.0 and noticed they've updated how they store the SKFs. The redis storage is now obsolete (which is awesome since redis is not made to persistently store important data). I'd love to help with that if you don't mind 🙂

Link to Chirpstack's changelog: https://www.chirpstack.io/docs/chirpstack/changelog.html#device-session-migration

Reference inside the source code for an example code that'll cause issues: https://github.com/disk91/helium-chirpstack-community/blob/30f870bcebee2c3ddce5babf8988af36ec39235e/src/main/java/eu/heliumiot/console/service/NovaService.java#L473-L480

PS: as of now I've resolved it temporarily by setting "ignore_empty_skf": false in the helium route, but I don't like this as a permanent solution...

disk91 commented 4 months ago

Hello, The bext release will be with chirpstack 4.7 and will support the change. I was waiting chirpstack 4.7 to be released and stable before migrating to it as there is not real important functional update. i'll soon update after finishing some work on another project. I don't recommend to use a non supported version of chirpstack with helium-chirpstack (like for the exact reason you created this issue). ignore_empty_skf is a bypass but is a really high risk for your DC wallet. Paul

vkynchev commented 4 months ago

Okay, that’s good. It’s been released for a month now and it comes with a really important feature to me (I guess a lot of other people too) - Postgres SKFs. We’ve lost our redis db because of corruption a couple times (all on cloud providers) and that caused a lot of headaches every time.

disk91 commented 4 months ago

Redis is still here in 4.7, just not used for Session Filter for performance issues. 4.7 will only have an impact for you if you run a large fleet of devices with a small amount of devaddr. As you may imagine, I'm running also multiple instances of this software in production. I never had redis corruption. You may have a deep look at your setup as 4.7 will not fix this.

disk91 commented 3 months ago

Hello @vkynchev the master contains update for chirpstack 4.7.0 support. this is not a terminated and fully tested release but it works in staging. You may be able to deploy and make is working.

vkynchev commented 3 months ago

@disk91 Awesome, thanks for letting me know.