[CalendarServer-users] Transaction timeout in InboxCleanupWork

Andre LaBranche dre at apple.com
Wed Feb 3 16:24:09 PST 2016

> On Feb 2, 2016, at 11:22 PM, Kristoffer <kmo at b-one.net> wrote:
> When running calendar server 7.0 on a system with many calendar homes, error messages are logged from the worker system:
> 2016-02-02 14:18:44+0000 [-] [caldav-1]  [-] [txdav.common.datastore.sql#error] Transaction abort too long: PG-TXN<ultimatelyPerform: 4041391 <INBOX_CLEANUP_WORK>>, Statements: 214963, IUDs: 
> 0, Statement: insert into JOB (NOT_BEFORE, PRIORITY, WEIGHT, WORK_TYPE) values (%s, %s, %s, %s) returning FAILED, JOB_ID, PAUSE, OVERDUE, ASSIGNED
> 2016-02-02 14:18:44+0000 [-] [caldav-1]  [-] [twext.enterprise.jobs.jobitem#error] JobItem: 4041391, WorkItem: 4041374 failed: [Failure instance: Traceback: <class 'twext.enterprise.ienterpri
> se.AlreadyFinishedError'>:
> ...
> The problem seems to be that InboxCleanupWork within one single transaction tries to schedule a CleanupOneInboxWork for each calendar  home.
> Any suggestions for how we can get around this problem?

I don't believe we've seen this one yet... If that's what is really happening, the only options I can think of are to enhance the scheduling of that work to happen in reasonably sized chunks, or else bump up the transaction timeout (TransactionTimeoutSeconds).

Roughly how many accounts are there?


More information about the calendarserver-users mailing list