herddb icon indicating copy to clipboard operation
herddb copied to clipboard

Activator too "active"

Open diegosalvi opened this issue 6 years ago • 1 comments

When is not possible to start a tablespace activator will keep to try ever and ever again eventually leading to file system full with logs.

For instance this error kept to appear every second for every tablespace:

17-08-19-15-25-21       herddb.core.DBManager Aug 19, 2017 3:25:21 PM herddb.core.DBManager handleTableSpace
SEVERE: Error
herddb.log.LogNotAvailableException: org.apache.bookkeeper.client.BKException$BKNotEnoughBookiesException
        at herddb.cluster.BookkeeperCommitLog$CommitFileWriter.<init>(BookkeeperCommitLog.java:92)
        at herddb.cluster.BookkeeperCommitLog$CommitFileWriter.<init>(BookkeeperCommitLog.java:80)
        at herddb.cluster.BookkeeperCommitLog.openNewLedger(BookkeeperCommitLog.java:247)
        at herddb.cluster.BookkeeperCommitLog.startWriting(BookkeeperCommitLog.java:361)
        at herddb.core.TableSpaceManager.startAsLeader(TableSpaceManager.java:961)
        at herddb.core.TableSpaceManager.start(TableSpaceManager.java:212)
        at herddb.core.DBManager.handleTableSpace(DBManager.java:484)
        at herddb.core.DBManager.manageTableSpaces(DBManager.java:1060)
        at herddb.core.DBManager.executeActivator(DBManager.java:1020)
        at herddb.core.DBManager.access$500(DBManager.java:107)
        at herddb.core.DBManager$Activator.run(DBManager.java:971)
        at java.lang.Thread.run(Thread.java:745)
Caused by: org.apache.bookkeeper.client.BKException$BKNotEnoughBookiesException
        at org.apache.bookkeeper.client.BKException.create(BKException.java:58)
        at org.apache.bookkeeper.client.BookKeeper.createLedger(BookKeeper.java:556)
        at herddb.cluster.BookkeeperCommitLog$CommitFileWriter.<init>(BookkeeperCommitLog.java:88)
        ... 11 more

diegosalvi avatar Aug 25 '17 12:08 diegosalvi

@diegosalvi a workaround for the user it to set the haltontablespaceerror property, this way the database will stop, this is really useful in single machine setups

eolivelli avatar Aug 25 '17 12:08 eolivelli