You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@openoffice.apache.org by bu...@apache.org on 2012/05/27 13:27:06 UTC

[Bug 119423] Open office service hung

https://issues.apache.org/ooo/show_bug.cgi?id=119423

--- Comment #1 from jvchbabu <jv...@gmail.com> ---
Hi,

 We are using open office spreadsheet API to generate Excel reports.We have the
data stored in ArrayList (java) and writing to range of cells. The data is
quite huge ie.. 90 thousand rows having 10 columns for each row. 
Two or three users concurrently requested for this particular report then the
open office service hung and it's a kind of freeze and no further requests are
serviced by open office service until we restart it.
This is happening frequently for every two or three hours. This is production
environment and every time to restart the open office service is difficult
moreover convincing client for restart. The code segments are given below.

1)The below code is responsible to write a set of rows to a cell range.

XTableColumns xColumns = xCRRange.getColumns();
XCellRangeData rangeData=null; 
Object[][] rangeValues=null;                
curCellRange=totalCellRange.getCellRangeByPosition(0, 0, 10, 91000);

rangeData = (XCellRangeData) UnoRuntime.queryInterface(XCellRangeData.class,
curCellRange);
rangeValues = rangeData.getDataArray(); 

//we will be iterating valueList(Arraylist) and placing them into rangeValues
array

rangeData.setDataArray(rangeValues);// this will set rangevalues to a cell
range.

Note: The Three requests are in process and open office service hung we have
taken the thread dump.

Thread dump at that moment:

"[ACTIVE] ExecuteThread: '14' for queue: 'weblogic.kernel.Default
(self-tuning)'" daemon prio=10 tid=0x00002aac991bd400 nid=0x6c6e in
Object.wait() [0x000000004a7a4000..0x000000004a7a5c10]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x00002aaafe0efe20> (a
com.sun.star.lib.uno.environments.remote.JobQueue)
    at
com.sun.star.lib.uno.environments.remote.JobQueue.removeJob(JobQueue.java:289)
    - locked <0x00002aaafe0efe20> (a
com.sun.star.lib.uno.environments.remote.JobQueue)
    at
com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:399)
    at
com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:372)
    at
com.sun.star.lib.uno.environments.remote.JavaThreadPool.enter(JavaThreadPool.java:132)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:902)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:851)
    at
com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.request(ProxyFactory.java:177)
    at
com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.invoke(ProxyFactory.java:163)
    at $Proxy86.setDataArray(Unknown Source)
    at
com.metricstream.systemi.client.openoffice.ExcelProcess.processHorizontalTable(ExcelProcess.java:421)
    at
com.metricstream.systemi.client.openoffice.ExcelProcess.processTableRow(ExcelProcess.java:311)
    at
com.metricstream.systemi.client.openoffice.ExcelProcess.replaceTextFields(ExcelProcess.java:252)
    at
com.metricstream.systemi.client.openoffice.ExcelSpreadsheet.generateSpreadsheet(ExcelSpreadsheet.java:188)
    at
com.metricstream.systemi.client.servlet.servant.Reportsexportwordpopup.validateFormData(Reportsexportwordpopup.java:137)
    at
com.metricstream.systemi.client.servlet.servant.BaseViewController.serve(BaseViewController.java:461)
    - locked <0x00002aac50384090> (a
com.metricstream.systemi.client.servlet.servant.Reportsexportwordpopup)
    at
com.metricstream.systemi.client.servlet.FrontController.doRequest(FrontController.java:226)
    at
com.metricstream.systemi.client.servlet.FrontController.doPost(FrontController.java:128)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
    at
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
    at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
    at
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
    at
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)

                                  ***********    
"[ACTIVE] ExecuteThread: '10' for queue: 'weblogic.kernel.Default
(self-tuning)'" daemon prio=10 tid=0x000000005e862c00 nid=0x6c6a in
Object.wait() [0x000000004a3a0000..0x000000004a3a1a10]
   java.lang.Thread.State: WAITING (on object monitor)
    at java.lang.Object.wait(Native Method)
    - waiting on <0x00002aaafe07bc80> (a
com.sun.star.lib.uno.environments.remote.JobQueue)
    at
com.sun.star.lib.uno.environments.remote.JobQueue.removeJob(JobQueue.java:289)
    - locked <0x00002aaafe07bc80> (a
com.sun.star.lib.uno.environments.remote.JobQueue)
    at
com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:399)
    at
com.sun.star.lib.uno.environments.remote.JobQueue.enter(JobQueue.java:372)
    at
com.sun.star.lib.uno.environments.remote.JavaThreadPool.enter(JavaThreadPool.java:132)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:902)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge.sendRequest(java_remote_bridge.java:851)
    at
com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.request(ProxyFactory.java:177)
    at
com.sun.star.lib.uno.bridges.java_remote.ProxyFactory$Handler.invoke(ProxyFactory.java:163)
    at $Proxy86.setDataArray(Unknown Source)
    at
com.metricstream.systemi.client.openoffice.ExcelProcess.processHorizontalTable(ExcelProcess.java:421)
    at
com.metricstream.systemi.client.openoffice.ExcelProcess.processTableRow(ExcelProcess.java:311)
    at
com.metricstream.systemi.client.openoffice.ExcelProcess.replaceTextFields(ExcelProcess.java:252)
    at
com.metricstream.systemi.client.openoffice.ExcelSpreadsheet.generateSpreadsheet(ExcelSpreadsheet.java:188)
    at
com.metricstream.systemi.client.servlet.servant.Reportsexportwordpopup.validateFormData(Reportsexportwordpopup.java:137)
    at
com.metricstream.systemi.client.servlet.servant.BaseViewController.serve(BaseViewController.java:461)
    - locked <0x00002aabf8a6e268> (a
com.metricstream.systemi.client.servlet.servant.Reportsexportwordpopup)
    at
com.metricstream.systemi.client.servlet.FrontController.doRequest(FrontController.java:226)
    at
com.metricstream.systemi.client.servlet.FrontController.doPost(FrontController.java:128)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
    at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
    at
weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:227)
    at
weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:125)
    at
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:292)
    at
weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:175)
    at
weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3498)
    at
weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
    at weblogic.security.service.SecurityManager.runAs(Unknown Source)
    at
weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2180)
    at
weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2086)
    at
weblogic.servlet.internal.ServletRequestImpl.run(ServletRequestImpl.java:1406)
    at weblogic.work.ExecuteThread.execute(ExecuteThread.java:201)
    at weblogic.work.ExecuteThread.run(ExecuteThread.java:173)



The error log indicates  Disposed of Exceptions.
Error log:
05/23/12 14:41:00.063 CEST ERROR (Thread[[ACTIVE] ExecuteThread: '19' for
queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads])
[ExcelProcess] exception: com.sun.star.lang.DisposedException:
com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
(s:null c:null i:null)
com.sun.star.lang.DisposedException: com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.invoke(java_remote_bridge.java:282)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.run(java_remote_bridge.java:170)
05/23/12 14:41:00.063 CEST ERROR (Thread[[ACTIVE] ExecuteThread: '20' for
queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads])
[ExcelProcess] exception: com.sun.star.lang.DisposedException:
com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
(s:null c:null i:null)
com.sun.star.lang.DisposedException: com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.invoke(java_remote_bridge.java:282)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.run(java_remote_bridge.java:170)
05/23/12 14:41:00.063 CEST ERROR (Thread[[ACTIVE] ExecuteThread: '15' for
queue: 'weblogic.kernel.Default (self-tuning)',5,Pooled Threads])
[ExcelProcess] exception: com.sun.star.lang.DisposedException:
com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
(s:null c:null i:null)
com.sun.star.lang.DisposedException: com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.invoke(java_remote_bridge.java:282)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.run(java_remote_bridge.java:170)
05/23/12 14:41:00.063 CEST ERROR (Thread[[ACTIVE] ExecuteThread: '3' for queue:
'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]) [ExcelProcess]
exception: com.sun.star.lang.DisposedException: com.sun.star.io.IOException:
EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
(s:null c:null i:null)
com.sun.star.lang.DisposedException: com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.invoke(java_remote_bridge.java:282)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.run(java_remote_bridge.java:170)
05/23/12 14:41:00.063 CEST ERROR (Thread[[ACTIVE] ExecuteThread: '2' for queue:
'weblogic.kernel.Default (self-tuning)',5,Pooled Threads]) [ExcelProcess]
exception: com.sun.star.lang.DisposedException: com.sun.star.io.IOException:
EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
(s:null c:null i:null)
com.sun.star.lang.DisposedException: com.sun.star.io.IOException: EOF reached -
socket,host=localhost,port=8100,localHost=localhost.localdomain,localPort=12958,peerHost=localhost,peerPort=8100
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.invoke(java_remote_bridge.java:282)
    at
com.sun.star.lib.uno.bridges.java_remote.java_remote_bridge$MessageDispatcher.run(java_remote_bridge.java:170)


We are running into this kind of situation for every two or thee hours and open
office service requires restart.
The Thread dump indicates that the open office internal processing threads went
into some kind of deadlock situation at
com.sun.star.lib.uno.environments.remote.JobQueue.removeJob(JobQueue.java:289)
- locked <0x00002aaafe07bc80> (a
com.sun.star.lib.uno.environments.remote.JobQueue).

-- 
You are receiving this mail because:
You are the assignee for the bug.