[Libreoffice] Trying to diagnose base running extremely slowly

Stephan Bergmann sbergman at redhat.com
Thu Oct 20 00:08:17 PDT 2011


On 10/19/2011 07:17 PM, Andrew Haley wrote:
> On 10/19/2011 05:57 PM, Michael Meeks wrote:
>>
>> On Wed, 2011-10-19 at 17:32 +0200, Stephan Bergmann wrote:
>>> What the LibO hsqldb code does a lot is call JNI's
>>> Attach/DetachCurrentThread.  Googling around,
>>> <http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6929067>  "Stack
>>> guard pages should be removed when thread is detached" suggests that
>>> reading /proc/self/maps might have been added into
>>> Attach/DetachCurrentThread as part of a bug fix.  That would explain things.
>>
>> 	Good catch ! The irony ... :-) this Java bug was kindly fixed for us
>> indirectly via Andrew Haley to address the bad stack page left around when
>> we had run some java. That page was causing crashes in calc formula computation
>> in large sheets.
>>
>> 	It seems we can't win at some stage here. Andrew - I wonder are other
>> people getting frustrated by performance here too ? it seems there is
>> some huge /proc/self/maps thrash as we enter/exit Java now on Linux.
>
> Hmmm, I thought this had been fixed.
>
> See http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=6978641

This might still hit us, if the LibO hsqldb code runs in the main thread 
(which I'm pretty sure it does).  That code calls 
Attach/DetachCurrentThread frequently.

I think the best solution here would be to change the LibO hsqldb code, 
to call Attach/DetachCurrentThread rarely rather than frequently, but 
according to Ocke Janssen (who used to maintain that code) that was no 
easy option.

-Stephan


More information about the LibreOffice mailing list