Never got a response, but instead found a bit of time to look into it
myself...
It turns out to be problem in trippi it would appear. The following is
the top of a stacktrace from the constructor of a TransactionalAnswer,
that is never closed:
at
org.mulgara.resolver.TransactionalAnswer.<init>(TransactionalAnswer.java:77)
at
org.mulgara.resolver.DatabaseOperationContext.doQuery(DatabaseOperationContext.java:803)
at
org.mulgara.resolver.SubqueryAnswer.resolveSubquery(SubqueryAnswer.java:265)
at
org.mulgara.resolver.SubqueryAnswer.getObject(SubqueryAnswer.java:204)
at
org.mulgara.resolver.TransactionalAnswer$1.execute(TransactionalAnswer.java:88)
at
org.mulgara.resolver.MulgaraInternalTransaction.execute(MulgaraInternalTransaction.java:647)
at
org.mulgara.resolver.TransactionalAnswer.getObject(TransactionalAnswer.java:86)
at org.trippi.impl.mulgara.RowGroup.initialize(RowGroup.java:45)
at org.trippi.impl.mulgara.RowGroup.<init>(RowGroup.java:33)
at
org.trippi.impl.mulgara.CollapsedAnswer.initialize(CollapsedAnswer.java:74)
at
org.trippi.impl.mulgara.CollapsedAnswer.<init>(CollapsedAnswer.java:58)
at
org.trippi.impl.mulgara.MulgaraTupleIterator.<init>(MulgaraTupleIterator.java:24)
at
org.trippi.impl.mulgara.MulgaraSession.query(MulgaraSession.java:139)
at
org.trippi.impl.base.ConcurrentTriplestoreReader.findTuples(ConcurrentTriplestoreReader.java:79)
at
fedora.server.resourceIndex.ResourceIndexImpl.findTuples(ResourceIndexImpl.java:280)
....
The RowGroup never closes the answer it gets. Proposed patch:
Index: src/java/org/trippi/impl/mulgara/RowGroup.java
===================================================================
--- src/java/org/trippi/impl/mulgara/RowGroup.java (revision 103)
+++ src/java/org/trippi/impl/mulgara/RowGroup.java (working copy)
@@ -109,6 +109,13 @@
if (m_rowCount > 0) {
m_nextValues = null;
}
+ for (int i = 0; i < m_valueList.size(); i++) {
+ Object val = m_valueList.get(i);
+ if (val instanceof Answer) {
+ Answer innerAnswer = (Answer) val;
+ innerAnswer.close();
+ }
+ }
}
} else {
m_nextValues = null;
Morten Grouleff wrote:
> When using risearch intensively, I get many lines like the following on my
> console:
>
> WARN 2008-08-25 10:22:06.082 [Finalizer] (TransactionalAnswer)
> TransactionalAnswer not closed
>
> And also many like
>
> WARN 2008-08-25 10:33:18.991 [Write-lock Reaper] (MulgaraTransactionFactory)
> Rolling back inactive transaction
>
> Should that worry me? The fact that it is category "WARN" and that it runs in
> a finalizer does make me a bit worried. It
> would appear as if something needs closing? But how can I "close" (or forget
> to close) anything using the risearch
> servlet over http?
>
--
Mvh.
Morten Grouleff
--------------------------------------------------------------------
Trifork A/S, Margrethepladsen 4, DK-8000 Aarhus C, Denmark.
JAOO 2008: Sep. 28. - Oct. 3. 2008 http://jaoo.dk/ See you there?
-------------------------------------------------------------------------
This SF.Net email is sponsored by the Moblin Your Move Developer's challenge
Build the coolest Linux based applications with Moblin SDK & win great prizes
Grand prize is a trip for two to an Open Source event anywhere in the world
http://moblin-contest.org/redirect.php?banner_id=100&url=/
_______________________________________________
Fedora-commons-developers mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/fedora-commons-developers