Hi! Thank you very much for the confirmation and very quick fix. I have successfully applied the fix in our version.
And thank you for your very good work! /Marcus Roger Light skrev 2013-12-09 22:53: > Hi Marcus, > > It is a bug. Thanks for the very detailed description, it made it easy > to figure out. I guessed what the problem was before I finished > recreating it actually, so I'm sorry it was hard for you to find where > things weren't working. > > I've pushed a fix on the 1.3 branch which should be very easy to use on 1.2.3: > > https://bitbucket.org/oojah/mosquitto/commits/a8e563fc0f53873500d31f217133540504735cdc > > Thanks! > > Roger > > > On Mon, Dec 9, 2013 at 3:23 PM, Marcus Rejås <marcus.re...@alleato.se> wrote: >> Problem: Messages are not being retained under some circumstances when >> persistence is being used. >> >> Setup: >> >> Mosquitto 1.2.3 >> >> BROKER A <-- BRIDGE --> BROKER B >> >> The bridge is initiated from Broker B. >> >> Config A >> >> persistence true >> persistence_file mosquitto-A.db >> persistence_location /tmp/ >> autosave_interval 3600 >> >> port 1883 >> >> >> Config B >> >> persistence true >> persistence_file mosquitto-B.db >> persistence_location /tmp/ >> autosave_interval 3600 >> >> port 1884 >> >> connection A >> address 127.0.0.1:1883 >> topic # both >> >> >> When starting with no persistence files it works as we expects. >> >> Setting a retained message on either A or B makes it retained on both >> brokers. >> >> Setting on A and B >> >> $ mosquitto_pub -p 1883 -t retainedA -m test -r >> $ mosquitto_pub -p 1884 -t retainedB -m test -r >> >> Verifying that the messages are retained. >> >> $ mosquitto_sub -p 1883 -t \# -v >> retainedA test >> retainedB test >> >> $ mosquitto_sub -p 1884 -t \# -v >> retainedA test >> retainedB test >> >> Works as expected. >> >> Removing the retained messages by sending a null-message to the topics >> also works as expected. >> >> But, restarting the brokers (making them read the persistence database) >> makes it behave different. >> >> $ mosquitto_pub -p 1883 -t retainedA -m test -r >> $ mosquitto_pub -p 1884 -t retainedB -m test -r >> >> $ mosquitto_sub -p 1883 -t \# -v >> retainedA test >> retainedB test >> >> $ mosquitto_sub -p 1884 -t \# -v >> retainedB test >> >> Only the retained message set directly on B is set on B. Also remove >> retained topics on B via the bridge does not work. >> >> This was little hard to find since it only occurs after restarting with >> a persistence file present. >> >> Is this a bug or did we do something wrong? >> >> Regards >> >> Marcus >> >> -- >> Marcus Rejås >> ALLEATO >> Tel. +46 176 250103 >> Mobilnr: +46 70 266 79 85 >> marcus.re...@alleato.se >> http://www.alleato.se >> >> -- >> Mailing list: https://launchpad.net/~mosquitto-users >> Post to : mosquitto-users@lists.launchpad.net >> Unsubscribe : https://launchpad.net/~mosquitto-users >> More help : https://help.launchpad.net/ListHelp -- *Marcus Rejås* *ALLEATO* Tel. +46 176 250103 Mobilnr: +46 70 266 79 85 marcus.re...@alleato.se <mailto:marcus.re...@alleato.se> http://www.alleato.se -- Mailing list: https://launchpad.net/~mosquitto-users Post to : mosquitto-users@lists.launchpad.net Unsubscribe : https://launchpad.net/~mosquitto-users More help : https://help.launchpad.net/ListHelp