On 01/11/2012 12:51 PM, Tomas Hlavaty wrote:
Is there a mechanism that when a link between the server and client
bridge breaks, the server releases the resources properly, or do we
get/expect memory leaks?
In some sense this is a QoI issue.
What is "a QoI issue"? Quality of Information? You mean that the
server must be able to detect disconnection, which works with sockets
but wouldn't work for example with named pipes?
Quality of Implementation, sorry. As I wrote the other day, UNO largely
tries to pretend that interprocess communication is no different from
intraprocess communication. So questions of how to react to a lost
connection are somewhat outside the scope of the UNO specification.
My use case is as follows:
1) connect to LO via unix domain socket
2) load and traverse (via uno) a large word document (about 1200 pages
of plain text)
3) close the connection
And repeat many times with long running LO process.
[...]
The memory usage keeps growing, slightly but persistently. Is it a
leak, or a feature of the custom LO allocator, or would it stabilise
eventually?
Setting G_SLICE=always-malloc environment variable should help rule out
the LO memory allocator.
I can easily imagine that there is a leak somewhere. Why the numbers
are different with different release strategies is hard to tell. In
principle, it could be that releasing a remotely held UNO object early
releases more additional data structures than if it is only released
later, if the indirectly referenced data structures change in the
meantime (e.g., mass release during connection loss might hypothetically
lead to unreclaimable ring references).
Stephan
Context
Privacy Policy |
Impressum (Legal Info) |
Copyright information: Unless otherwise specified, all text and images
on this website are licensed under the
Creative Commons Attribution-Share Alike 3.0 License.
This does not include the source code of LibreOffice, which is
licensed under the Mozilla Public License (
MPLv2).
"LibreOffice" and "The Document Foundation" are
registered trademarks of their corresponding registered owners or are
in actual use as trademarks in one or more countries. Their respective
logos and icons are also subject to international copyright laws. Use
thereof is explained in our
trademark policy.