Problem

After the Redis storage update, the sender service started to behave unexpectedly. New subscribers were not able to get messages until some random time passed. After this time messages were delivered with a huge amount of duplicates.

Solution

The problem was caused by improper usage of Go-lang pointers. A final array of messages happened to be an array of pointers to the same message.

Problem was solved within a commit - https://git.systransfer.com/webpush/webpush-go-sender/-/commit/008e243617b9b274836615c28df2fc7ba157dbbb