cancel
Showing results for 
Search instead for 
Did you mean: 

soffice.bin process using a lot of resources.

imdea
Champ in-the-making
Champ in-the-making
Hello guys,

I have alfresco 4.0.d installed in a Debian 6 box, but I'm getting some problems with a process called soffice.bin that seems to be eating a lot of cpu and memory resources.

By some reason, it doesn't matter at what time I check the system resources comsumption via "top", there it is that process "soffice.bin" using a lot of resources, even if Alfresco doesn't have any users working on it.

This is a top output:


top - 11:37:15 up 18 days, 15:28,  1 user,  load average: 1.00, 1.01, 1.00
Tasks:  74 total,   2 running,  72 sleeping,   0 stopped,   0 zombie
Cpu(s): 83.7%us, 16.3%sy,  0.0%ni,  0.0%id,  0.0%wa,  0.0%hi,  0.0%si,  0.0%st
Mem:   2093716k total,  1944732k used,   148984k free,   245608k buffers
Swap:  1048568k total,    23284k used,  1025284k free,   843380k cached

  PID USER      PR  NI  VIRT  RES  SHR S %CPU %MEM    TIME+  COMMAND                                                                                                                                          
32395 root      20   0  111m  33m  29m S 99.3  1.7   2866:32 soffice.bin                                                                                                                                      
7788 root      20   0  2460 1140  892 R  0.3  0.1   0:00.03 top                                                                                                                                              
32291 root      20   0 1197m 696m 8832 S  0.3 34.1  11:19.41 java          

If I comment the OO path location into alfresco-global.properties it's ok, that process doesn't run but then I have some problems with other operations (I guess it's because Alfresco can not access documents metadata).

What could I do? I've been experimenting this problem since alfresco 3.2 and is driving me crazy, it's slowing down my server and my users are complaining a lot about that.

Thank you very much
11 REPLIES 11

mrogers
Star Contributor
Star Contributor
Open office is needed by alfresco.  It's quite normal for it to be working hard.

It's possible something has gone wrong for example repeatedly trying to transform a document which fails.  There may be a clue in your alfresco log file.

imdea
Champ in-the-making
Champ in-the-making
Is it quite normal that it uses that amount of resources and that everytime no matter what time is it even if there aren't any user working on it, it be using 99% of my CPU?

wtf?

In my logs file there isn't anything anormal

digihorse
Champ in-the-making
Champ in-the-making
This is usually indicative of a problem with a newer version of an MS office document/spreadsheet, often with macros.  The OpenOffice/LibreOffice just can't open the file to view it, and starts consuming process time trying.  It is usually from someone doing  a "view" on a suspect document.  Stop Alfresco and kill the process.  You can also just stop the openoffice with the alfresco/openoffice/scripts/ folder scripts.   Updating the latest LibreOffice will help quite a bit. LibreOffice is a bit better behaved than OpenOffice in these situations.

imdea
Champ in-the-making
Champ in-the-making
Are you sure Alfresco works with "libreoffice"?

I have a Debian Squeeze server with Alfresco 4, and as libreoffice is not into Debian stable packages at the moment I installed a backport, but it seems that Alfresco doesn't like it, these is the error I got when starting up Alfresco:

2012-03-31 17:47:32,808  ERROR [management.subsystems.AbstractPropertyBackedBean] [main] Error auto-starting subsystem
net.sf.jooreports.openoffice.connection.OpenOfficeException: connection failed: socket,host=localhost,port=8100,tcpNoDelay=1; com.sun.star.lang.IllegalArgumentException
   at net.sf.jooreports.openoffice.connection.AbstractOpenOfficeConnection.connect(AbstractOpenOfficeConnection.java:77)
   at org.alfresco.util.OpenOfficeConnectionTester.testAndConnect(OpenOfficeConnectionTester.java:152)
   at org.alfresco.util.OpenOfficeConnectionTester.checkConnection(OpenOfficeConnectionTester.java:123)
   at org.alfresco.util.OpenOfficeConnectionTester.onBootstrap(OpenOfficeConnectionTester.java:96)
   at org.springframework.extensions.surf.util.AbstractLifecycleBean.onApplicationEvent(AbstractLifecycleBean.java:56)
   at org.springframework.context.event.SimpleApplicationEventMulticaster.multicastEvent(SimpleApplicationEventMulticaster.java:97)

sasquatch58
Champ in-the-making
Champ in-the-making
I've successfully used LibreOffice in place of OpenOffice in Alfresco 3.4.d but I think the code that verifies that Open/LibreOffice is available is just a little too specific and will throw errors in the LibreOffice usage. Generally these are inconsequential so you might have other issues. Did you get it to work at all?
Cheers, Sasquatch

imdea
Champ in-the-making
Champ in-the-making
No, it gives me that error.

Maybe the Alfresco staff people could tell us a little more about whether this is possible?

I'm using Alfresco 4.0.d

digihorse
Champ in-the-making
Champ in-the-making
Yes, I'm sure that Libre Office works.   I use OpenSuSE.   What didn't work was changing the link to the OO bin in the configs.  What did work was leaving the link, and creating a symlink from OpenOffice to the LibreOffice install, and then placing the alfresco openoffice start script in a new scripts directory under LIbre Office. Voila!

imdea
Champ in-the-making
Champ in-the-making
In theory it should be the same if I change the link of OO in the configs.

What I didn't understand well from your reply was this part:

and then placing the alfresco openoffice start script in a new scripts directory under LIbre Office

Could you explain it a bit more please?

digihorse
Champ in-the-making
Champ in-the-making
yes, in theory, it should work if you change the configs.  In practice, I found that it generated errors. So, being a good linux admin, I just used symlinks instead, so that the application was none the wiser.   In so doing, I'm doing an end run around anything buried inside the system that is failing to properly read the configs, because quite honestly, I don't have the time to do that debugging. I just need it to work.