[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [sdx-users] java.io.IOException: Already closed
From: |
Malo Pichot |
Subject: |
Re: [sdx-users] java.io.IOException: Already closed |
Date: |
Tue, 28 Jul 2009 10:27:15 +0200 |
User-agent: |
Thunderbird 2.0.0.22 (X11/20090608) |
Bonjour,
Bon, je n'ai pas répondu au bon courriel :-(
La version de Lucene utilisée dans SDX 2.2 est 1.4-rc1-dev-20040110.
La raison du patch est essentiellement l'ajout d'un type de requête
AnalyzedQuery.
Emmanuel Bégué a écrit :
> Bonjour,
>
> J'ai un peu mieux cerné le problème décrit dans le message
> ci-dessous: en fait l'erreur "Already closed" se produit
> lorsque le jar Lucene 1.4.3 est présent sur le classpath
> (en plus de celui fourni avec cette version de sdx, qui
> s'appelle "lucene-patched-builddate").
>
> Sur cette installation il n'est pas possible que ce jar ne
> soit pas présent, donc il faudrait réussir à faire cohabiter
> cette version de SDX et ce jar.
>
> => quelle est la version de Lucene qui est patchée dans la
> version 2.2 de SDX et quel était l'objet du patch?
>
>
> Je soupçonne la classe LuceneDataStore/recycleSearcher d'être
> à l'origine du problème, car elle est signalée par l'exception
>
> java.io.IOException: Already closed
> at fr.gouv.culture.sdx.exception.SDXException.log(SDXException.java:115)
> at fr.gouv.culture.sdx.exception.SDXException.<init>(SDXException.java:103)
> at
> fr.gouv.culture.sdx.utils.lucene.LuceneDataStore.recycleSearcher(LuceneDataStore.java:149)
> at
> fr.gouv.culture.sdx.utils.lucene.LuceneDataStore.init(LuceneDataStore.java:102)
> at
> fr.gouv.culture.sdx.search.lucene.query.LuceneIndex.mergeBatch(LuceneIndex.java:471)
> at
> fr.gouv.culture.sdx.documentbase.LuceneDocumentBase.compactSearchIndex(LuceneDocumentBase.java:395)
> at
> fr.gouv.culture.sdx.documentbase.SDXDocumentBase.index(SDXDocumentBase.java:1069)
> at
> fr.gouv.culture.sdx.documentbase.SDXDocumentBase.index(SDXDocumentBase.java:761)
>
> et on y trouve:
>
> try {
> if (this.searcher != null)
> //freeing resources
> //TODO?:but what if an external call has already closed the
> //searcher or the searcher is in use?-rbp
> this.searcher.close();
>
> Le commentaire "TODO" semble prophétique... (mais le test
> sur null devrait éviter de fermer quelque chose qui est déjà
> fermé?)
>
> J'ai essayé de commenter "this.searcher.close()" mais j'ai
> alors une NPE générale (même pour une simple recherche).
>
> Des pistes?
>
> Merci,
> Cordialement,
> EB
>
>> -----Original Message-----
>> From: address@hidden
>> [mailto:address@hidden
>> On Behalf Of Emmanuel Bégué
>> Sent: Tuesday, July 07, 2009 5:53 PM
>> To: address@hidden
>> Subject: [sdx-users] java.io.IOException: Already closed
>>
>>
>> Bonjour,
>>
>> Suite à une migration de plateforme d'une installation de SDX 2.2
>> datant de 2004, on rencontre l'erreur en objet suite à toute
>> tentative d'indexation:
>>
>> <sdx:message>
>> Unable to get a searcher object for the Lucene index located
>> at (...)
>> </sdx:message>
>>
>> <sdx:originalException>
>> java.io.IOException: Already closed at (...)
>>
>> Cette erreur interdit ensuite d'accéder aux fichiers d'index
>> même en lecture; la recherche donne l'erreur suivante:
>>
>> <sdx:message>Unable to execute the query, "(+sdxall:1)":
>> Unable to read the search index of
>> address@hidden:
>> Bad file descriptor</sdx:message>
>>
>> <sdx:originalException>
>> java.io.IOException: Bad file descriptor
>> at fr.gouv.culture.sdx.exception.SDXException.log
>> at (...)
>>
>> (Mais on peut rechercher tant qu'on n'a pas (ré-)indexé; il semblerait
>> que ce soit la fusion des index temporaire et principal qui crée
>> le problème).
>>
>>
>> La recherche de "java.io.IOException: Already closed" dans
>> Google donne des exemples divers qui concernent Lucene 2.0
>> (ici on est en 1.4) avec un JDK 1.5.x (ici on est en 1.4.2)...
>>
>> Est-ce que quelqu'un a déjà rencontré cette erreur et aurait des
>> pistes pour la résoudre...?
>>
>> Merci,
>> Cordialement,
>> Emmanuel Bégué
Re: [sdx-users] java.io.IOException: Already closed, Malo Pichot, 2009/07/28