We’ve been informed that some people have noticed their MusicBrainz slave servers have stopped applying replication packets. We’ve tracked the problem down and now have a fix for this problem.
How Do I Tell If I’m Affected?
To determine if you are affected, connect to the MusicBrainz PostgreSQL database (we recommend using ./admin/psql
from your musicbrainz-server
checkout) and run the following:
SELECT now() - last_replication_date FROM replication_control;
If you see a date that is larger than a few days, there’s a good chance you are affected by this bug and should upgrade.
How Do I Fix This?
Fixing this is easy, you simply need to update your Git checkout. We suggest the following:
cd musicbrainz-server git fetch --tags origin git checkout v-2013-10-14-replication-fix-2
EDIT: formerly used a different (broken) tag and recommended a different method of fetching tags.
When replication next runs, the data that cannot be applied will be rewritten and replication will continue as normal.
I applied the update to my GIt checkout, but my replication seems to be stuck in a loop:
bin/check-replication-lock
Mon Feb 3 15:44:17 2014 : Continuing a previously aborted load
… LAST_REPLICATION_SEQUENCE file missing or malformed
This packet was produced (or begins) at 2013-11-27 18:00:19.389518+00
LAST_TIMESTAMP file missing or malformed, setting to TIMESTAMP
./admin/psql
musicbrainz=> SELECT now() – last_replication_date FROM replication_control;
?column?
————————
68 days 04:32:11.01539
(1 row)
The replication is not progressing past 2013/11/27
Thanks!