I updated my Docker Images from 2.2 to 2.3
I also did an update of the redis image.
I have all my configs and the redis data as VOLUME on my host system,
so if I delete all the containers and rebuild them, this should have no effect on the data.
After updating to 2.3, my old API KEYs were invalid. After creating new ones, it worked again.
Is this expected behaviour, e.g. because of the redis update?
We just ran an upgrade scenario from 2.2 to 2.3 where a token was generated in 2.2 and then used in 2.3 with the same redis DB (this is not dockerised, this was a local installation from our package cloud - the same binaries running in the containers). The scenario showed that tokens continued to be valid across binary versions of the gateway - so I suspect that redis dropped your data when you restarted the container.
I updated tyk dashboard and gateway to recent version. All details are there but when I use old API keys I am getting invalid API key error.
As per previous discussion I checked redis server data. There I could see many keys (eg apikey-bba1234), it also has API,organization , user quota etc related data.
I would suggest you transpose your configurations (redis and mongo) into the templates that ship in the install/ directory of both the gateway and the dashboard as a lot has changed.
And that right there is the problem. It’s the murmur hash lib we use, ours is vendored because the original author changed the seed value of the lib (and made it non-configurable) and breaking backwards compatibility - which we can’t tolerate,
So basically if you compiled Tyk with the non-vendored version, it’s likely it generates hashes that are incompatible with the Tyk mainline
The only option for you is to compile the latest version of Tyk Gateway yourself, but remove the murmur3 library from the vendors list so that you use the same version that your old Tyk was built to.