My ZD (on Ubuntu 11.04) has stopped connecting to my POP3 server, citing the following message. Debug message: [SQLITE_CONSTRAINT] Abort due to constraint violation (column id is not unique)

the rest of the log is as follows..

Exception:

com.zimbra.cs.mailbox.MailServiceException: object with that id already exists: 2380840
ExceptionId:btpool0-5:1346266284607:ae18c04a79ebdf4c
Code:mail.ALREADY_EXISTS ArgitemId, IID, "2380840")
at com.zimbra.cs.mailbox.MailServiceException.ALREADY _EXISTS(MailServiceException.java:395)
at com.zimbra.cs.db.DbMailItem.create(DbMailItem.java :209)
at com.zimbra.cs.mailbox.Message.createInternal(Messa ge.java:534)
at com.zimbra.cs.mailbox.Message.create(Message.java: 462)
at com.zimbra.cs.mailbox.Mailbox.addMessageInternal(M ailbox.java:4944)
at com.zimbra.cs.mailbox.Mailbox.addMessage(Mailbox.j ava:4755)
at com.zimbra.cs.mailbox.Mailbox.addMessage(Mailbox.j ava:4690)
at com.zimbra.cs.mailbox.Mailbox.addMessage(Mailbox.j ava:4632)
at com.zimbra.cs.datasource.MailItemImport.addMessage (MailItemImport.java:96)
at com.zimbra.cs.datasource.Pop3Sync.fetchAndAddMessa ge(Pop3Sync.java:270)
at com.zimbra.cs.datasource.Pop3Sync.fetchAndRetainMe ssages(Pop3Sync.java:230)
at com.zimbra.cs.datasource.Pop3Sync.importData(Pop3S ync.java:129)
at com.zimbra.cs.datasource.DataSourceManager.importD ata(DataSourceManager.java:312)
at com.zimbra.cs.datasource.DataSourceManager.importD ata(DataSourceManager.java:276)
at com.zimbra.cs.mailbox.DataSourceMailbox.syncAllLoc alDataSources(DataSourceMailbox.java:440)
at com.zimbra.cs.mailbox.DataSourceMailbox.sync(DataS ourceMailbox.java:479)
at com.zimbra.cs.service.offline.OfflineSync.handle(O fflineSync.java:55)
at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEng ine.java:412)
at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.jav a:287)
at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.jav a:158)
at com.zimbra.soap.SoapServlet.doWork(SoapServlet.jav a:303)
at com.zimbra.soap.SoapServlet.doPost(SoapServlet.jav a:217)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:725)
at com.zimbra.cs.servlet.ZimbraServlet.service(Zimbra Servlet.java:206)
at javax.servlet.http.HttpServlet.service(HttpServlet .java:814)
at org.mortbay.jetty.servlet.ServletHolder.handle(Ser vletHolder.java:511)
at org.mortbay.jetty.servlet.ServletHandler.handle(Se rvletHandler.java:390)
at org.mortbay.jetty.security.SecurityHandler.handle( SecurityHandler.java:218)
at org.mortbay.jetty.servlet.SessionHandler.handle(Se ssionHandler.java:182)
at org.mortbay.jetty.handler.ContextHandler.handle(Co ntextHandler.java:765)
at org.mortbay.jetty.webapp.WebAppContext.handle(WebA ppContext.java:422)
at org.mortbay.jetty.handler.ContextHandlerCollection .handle(ContextHandlerCollection.java:230)
at org.mortbay.jetty.handler.HandlerCollection.handle (HandlerCollection.java:114)
at org.mortbay.jetty.handler.HandlerWrapper.handle(Ha ndlerWrapper.java:152)
at org.mortbay.jetty.handler.rewrite.RewriteHandler.h andle(RewriteHandler.java:230)
at org.mortbay.jetty.handler.HandlerWrapper.handle(Ha ndlerWrapper.java:152)
at org.mortbay.jetty.Server.handle(Server.java:326)
at org.mortbay.jetty.HttpConnection.handleRequest(Htt pConnection.java:585)
at org.mortbay.jetty.HttpConnection$RequestHandler.co ntent(HttpConnection.java:988)
at org.mortbay.jetty.HttpParser.parseNext(HttpParser. java:756)
at org.mortbay.jetty.HttpParser.parseAvailable(HttpPa rser.java:218)
at org.mortbay.jetty.HttpConnection.handle(HttpConnec tion.java:415)
at org.mortbay.io.nio.SelectChannelEndPoint.run(Selec tChannelEndPoint.java:429)
at org.mortbay.thread.BoundedThreadPool$PoolThread.ru n(BoundedThreadPool.java:451)
Caused by: java.sql.SQLException: [SQLITE_CONSTRAINT] Abort due to constraint violation (column id is not unique)
at org.sqlite.DB.newSQLException(DB.java:383)
at org.sqlite.DB.newSQLException(DB.java:387)
at org.sqlite.DB.execute(DB.java:342)
at org.sqlite.DB.executeUpdate(DB.java:363)
at org.sqlite.PrepStmt.executeUpdate(PrepStmt.java:85 )
at com.zimbra.cs.db.DebugPreparedStatement.executeUpd ate(DebugPreparedStatement.java:169)
at com.zimbra.cs.db.RetryPreparedStatement.superExecu teUpdate(RetryPreparedStatement.java:171)
at com.zimbra.cs.db.RetryPreparedStatement.access$800 (RetryPreparedStatement.java:30)
at com.zimbra.cs.db.RetryPreparedStatement$9.execute( RetryPreparedStatement.java:164)
at com.zimbra.cs.db.AbstractRetry.doRetry(AbstractRet ry.java:58)
at com.zimbra.cs.db.RetryPreparedStatement.executeUpd ate(RetryPreparedStatement.java:167)
at org.apache.commons.dbcp.DelegatingPreparedStatemen t.executeUpdate(DelegatingPreparedStatement.java:1 05)
at org.apache.commons.dbcp.DelegatingPreparedStatemen t.executeUpdate(DelegatingPreparedStatement.java:1 05)
at com.zimbra.cs.db.DbMailItem.create(DbMailItem.java :194)
... 42 more


Now what?