I'm using latest OXSE 6.12 with Cyrus v2.3.14 and I'm testing system performance using a "heavy" user account (about 64000 unread messages in the Inbox folder).
Sometimes, scrolling the Inbox folder with pageUp/pageDown keys leads to an ArrayIndexOutOfBoundsException and OX shows me a generic Error: 15 (MSG-9999, 1153503810-20).
After some further test, I'm able to reproduce the problem with 2 different Error messages:
Error: 15 (MSG-9999, 1153503810-20) (shown on OX client)
Error: [Not available] (MSG-9999, 1153503810-21) (shown on OX client)
No exception is thrown (at least for me) when using only the scrollbar to scroll the Inbox folder, so the reason for those exceptions could be a race condition between the scroll action (through keyboard) and the view selected email action (after a page scroll OX tries to load the currently selected email, which only occurs if I use keyboard to scroll up/down).
Besides those scrolling exceptions, I experienced some performance problem when using heavy Inbox folder (with 64000 messages my browser hangs up for 8-10 seconds). I tried to tweak some OX settings (com.openexchange.imap.imapFastFetch and com.openexchange.mail.mailFetchLimit) but with no improvements, so I'm looking for some more tweaks.
Sometimes, scrolling the Inbox folder with pageUp/pageDown keys leads to an ArrayIndexOutOfBoundsException and OX shows me a generic Error: 15 (MSG-9999, 1153503810-20).
After some further test, I'm able to reproduce the problem with 2 different Error messages:
Error: 15 (MSG-9999, 1153503810-20) (shown on OX client)
Code:
Sep 18, 2009 1:18:24 PM com.openexchange.ajax.Mail getWrappingOXException WARNING: An unexpected exception occurred, which is going to be wrapped for proper display. For safety reason its original content is display here. java.lang.ArrayIndexOutOfBoundsException: 15 at com.openexchange.imap.IMAPCommandsCollection$21.doCommand(IMAPCommandsCollection.java:1541) at com.sun.mail.imap.IMAPFolder.doProtocolCommand(IMAPFolder.java:2616) at com.sun.mail.imap.IMAPFolder.doCommand(IMAPFolder.java:2566) at com.openexchange.imap.IMAPCommandsCollection.uids2SeqNums(IMAPCommandsCollection.java:1488) at com.openexchange.imap.IMAPMessageStorage.getMessagesLong(IMAPMessageStorage.java:236) at com.openexchange.mail.api.enhanced.MailMessageStorageLong.getMessages(MailMessageStorageLong.java:257) at com.openexchange.mail.MailServletInterfaceImpl.getMessageList(MailServletInterfaceImpl.java:707) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2334) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2258) at com.openexchange.ajax.request.MailRequest.action(MailRequest.java:156) at com.openexchange.ajax.Multiple.doAction(Multiple.java:289) at com.openexchange.ajax.Multiple.parseActionElement(Multiple.java:178) at com.openexchange.ajax.Multiple.doPut(Multiple.java:126) at javax.servlet.http.HttpServlet.service(HttpServlet.java:619) at com.openexchange.ajax.AJAXServlet.service(AJAXServlet.java:365) at com.openexchange.ajax.SessionServlet.service(SessionServlet.java:159) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.doServletService(AJPv13RequestHandlerImpl.java:433) at com.openexchange.ajp13.AJPv13Request.response(AJPv13Request.java:128) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.createResponse(AJPv13RequestHandlerImpl.java:286) at com.openexchange.ajp13.najp.AJPv13ConnectionImpl.createResponse(AJPv13ConnectionImpl.java:189) at com.openexchange.ajp13.najp.AJPv13Task.run(AJPv13Task.java:281) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) at java.util.concurrent.FutureTask.run(FutureTask.java:123) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) Sep 18, 2009 1:18:24 PM com.openexchange.ajax.Mail actionPutMailList SEVERE: MSG-9999 Category=7 Message=15 exceptionID=304117002-8 MSG-9999 Category=7 Message=15 exceptionID=304117002-8 at com.openexchange.ajax.Mail.getWrappingOXException(Mail.java:210) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2360) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2258) at com.openexchange.ajax.request.MailRequest.action(MailRequest.java:156) at com.openexchange.ajax.Multiple.doAction(Multiple.java:289) at com.openexchange.ajax.Multiple.parseActionElement(Multiple.java:178) at com.openexchange.ajax.Multiple.doPut(Multiple.java:126) at javax.servlet.http.HttpServlet.service(HttpServlet.java:619) at com.openexchange.ajax.AJAXServlet.service(AJAXServlet.java:365) at com.openexchange.ajax.SessionServlet.service(SessionServlet.java:159) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.doServletService(AJPv13RequestHandlerImpl.java:433) at com.openexchange.ajp13.AJPv13Request.response(AJPv13Request.java:128) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.createResponse(AJPv13RequestHandlerImpl.java:286) at com.openexchange.ajp13.najp.AJPv13ConnectionImpl.createResponse(AJPv13ConnectionImpl.java:189) at com.openexchange.ajp13.najp.AJPv13Task.run(AJPv13Task.java:281) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) at java.util.concurrent.FutureTask.run(FutureTask.java:123) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) Caused by: java.lang.ArrayIndexOutOfBoundsException: 15 at com.openexchange.imap.IMAPCommandsCollection$21.doCommand(IMAPCommandsCollection.java:1541) at com.sun.mail.imap.IMAPFolder.doProtocolCommand(IMAPFolder.java:2616) at com.sun.mail.imap.IMAPFolder.doCommand(IMAPFolder.java:2566) at com.openexchange.imap.IMAPCommandsCollection.uids2SeqNums(IMAPCommandsCollection.java:1488) at com.openexchange.imap.IMAPMessageStorage.getMessagesLong(IMAPMessageStorage.java:236) at com.openexchange.mail.api.enhanced.MailMessageStorageLong.getMessages(MailMessageStorageLong.java:257) at com.openexchange.mail.MailServletInterfaceImpl.getMessageList(MailServletInterfaceImpl.java:707) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2334) ... 20 more
Error: [Not available] (MSG-9999, 1153503810-21) (shown on OX client)
Code:
Sep 21, 2009 11:40:21 AM com.openexchange.ajax.Mail getWrappingOXException WARNING: An unexpected exception occurred, which is going to be wrapped for proper display. For safety reason its original content is display here. java.lang.ArrayIndexOutOfBoundsException Sep 21, 2009 11:40:21 AM com.openexchange.ajax.Mail actionPutMailList SEVERE: MSG-9999 Category=7 Message=[Not available] exceptionID=1153503810-21 MSG-9999 Category=7 Message=[Not available] exceptionID=1153503810-21 at com.openexchange.ajax.Mail.getWrappingOXException(Mail.java:210) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2360) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2258) at com.openexchange.ajax.request.MailRequest.action(MailRequest.java:156) at com.openexchange.ajax.Multiple.doAction(Multiple.java:289) at com.openexchange.ajax.Multiple.parseActionElement(Multiple.java:178) at com.openexchange.ajax.Multiple.doPut(Multiple.java:126) at javax.servlet.http.HttpServlet.service(HttpServlet.java:619) at com.openexchange.ajax.AJAXServlet.service(AJAXServlet.java:365) at com.openexchange.ajax.SessionServlet.service(SessionServlet.java:159) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.doServletService(AJPv13RequestHandlerImpl.java:433) at com.openexchange.ajp13.AJPv13Request.response(AJPv13Request.java:128) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.createResponse(AJPv13RequestHandlerImpl.java:286) at com.openexchange.ajp13.najp.AJPv13ConnectionImpl.createResponse(AJPv13ConnectionImpl.java:189) at com.openexchange.ajp13.najp.AJPv13Task.run(AJPv13Task.java:281) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) at java.util.concurrent.FutureTask.run(FutureTask.java:123) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) Caused by: java.lang.ArrayIndexOutOfBoundsException Sep 21, 2009 11:40:22 AM com.openexchange.ajax.Mail getWrappingOXException WARNING: An unexpected exception occurred, which is going to be wrapped for proper display. For safety reason its original content is display here. java.lang.ArrayIndexOutOfBoundsException Sep 21, 2009 11:40:22 AM com.openexchange.ajax.Mail actionPutMailList SEVERE: MSG-9999 Category=7 Message=[Not available] exceptionID=1153503810-22 MSG-9999 Category=7 Message=[Not available] exceptionID=1153503810-22 at com.openexchange.ajax.Mail.getWrappingOXException(Mail.java:210) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2360) at com.openexchange.ajax.Mail.actionPutMailList(Mail.java:2258) at com.openexchange.ajax.request.MailRequest.action(MailRequest.java:156) at com.openexchange.ajax.Multiple.doAction(Multiple.java:289) at com.openexchange.ajax.Multiple.parseActionElement(Multiple.java:178) at com.openexchange.ajax.Multiple.doPut(Multiple.java:126) at javax.servlet.http.HttpServlet.service(HttpServlet.java:619) at com.openexchange.ajax.AJAXServlet.service(AJAXServlet.java:365) at com.openexchange.ajax.SessionServlet.service(SessionServlet.java:159) at javax.servlet.http.HttpServlet.service(HttpServlet.java:689) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.doServletService(AJPv13RequestHandlerImpl.java:433) at com.openexchange.ajp13.AJPv13Request.response(AJPv13Request.java:128) at com.openexchange.ajp13.najp.AJPv13RequestHandlerImpl.createResponse(AJPv13RequestHandlerImpl.java:286) at com.openexchange.ajp13.najp.AJPv13ConnectionImpl.createResponse(AJPv13ConnectionImpl.java:189) at com.openexchange.ajp13.najp.AJPv13Task.run(AJPv13Task.java:281) at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:417) at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:269) at java.util.concurrent.FutureTask.run(FutureTask.java:123) at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675) at java.lang.Thread.run(Thread.java:595) Caused by: java.lang.ArrayIndexOutOfBoundsException
No exception is thrown (at least for me) when using only the scrollbar to scroll the Inbox folder, so the reason for those exceptions could be a race condition between the scroll action (through keyboard) and the view selected email action (after a page scroll OX tries to load the currently selected email, which only occurs if I use keyboard to scroll up/down).
Besides those scrolling exceptions, I experienced some performance problem when using heavy Inbox folder (with 64000 messages my browser hangs up for 8-10 seconds). I tried to tweak some OX settings (com.openexchange.imap.imapFastFetch and com.openexchange.mail.mailFetchLimit) but with no improvements, so I'm looking for some more tweaks.
Comment