Eigenlijk zie ik één plek...
finally {
if (removeGroup) {
this.remove(group);
}
lock.unlock();
}
...als de berichtenopslag een uitzondering genereert tijdens het verwijderen, slaan we de ontgrendeling over - zie je iets in het logboek?