cancel
Showing results for 
Search instead for 
Did you mean: 

[Résolu]Erreurs récurrentes: ERROR [org.quartz.core.

nicolas_4463
Champ in-the-making
Champ in-the-making
Bonjour à tous,

Petit descriptif du système :
OS:
Linux SUSE sous VMWARE
DATA:
NAS NETAPP montage NFS
DB:
MYSQL 5.1
OPENOFFICE:
OOo2.4
ALFRESCO:
2.1 COMMUNITY
Auth NTLM avec AD
POSTES CLIENTS:
M$ VISTA + IE7
Le compte guest n'est pas supprimé.

Depuis plusieurs mois maintenant, nous avons dans les fichiers logs des erreurs très fréquentes.
Ces erreurs vont par deux pour une même entrée.
ex: contentUrl=store://2008/10/16/14/43/0b8f1b35-9b80-11dd-bcce-a55278671818.bin

Voici le détail dans les logs :
14:43:34,460 ERROR [org.quartz.core.JobRunShell] Job DEFAULT.ftsIndexerJobDetail threw an unhandled Exception: 
org.alfresco.service.cmr.repository.ContentIOException: Failed to open stream onto channel:
   accessor: ContentAccessor[ contentUrl=store://2008/10/16/14/43/0b8f1b35-9b80-11dd-bcce-a55278671818.bin, mimetype=null, size=0, encoding=UTF-8, locale=fr_FR]
   at org.alfresco.repo.content.AbstractContentReader.getContentInputStream(AbstractContentReader.java:337)
   at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:858)
   at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:542)
   at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1248)
   at org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:188)
   at sun.reflect.GeneratedMethodAccessor405.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
   at $Proxy9.index(Unknown Source)
   at org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
   at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
   at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: java.lang.UnsupportedOperationException: The content never exists
   at org.alfresco.repo.content.EmptyContentReader.getDirectReadableChannel(EmptyContentReader.java:59)
   at org.alfresco.repo.content.AbstractContentReader.getReadableChannel(AbstractContentReader.java:226)
   at org.alfresco.repo.content.AbstractContentReader.getContentInputStream(AbstractContentReader.java:330)
   … 17 more
14:43:34,462 ERROR [org.quartz.core.ErrorLogger] Job (DEFAULT.ftsIndexerJobDetail threw an exception.
org.quartz.SchedulerException: Job threw an unhandled exception. [See nested exception: org.alfresco.service.cmr.repository.ContentIOException: Failed to open stream onto channel:
   accessor: ContentAccessor[ contentUrl=store://2008/10/16/14/43/0b8f1b35-9b80-11dd-bcce-a55278671818.bin, mimetype=null, size=0, encoding=UTF-8, locale=fr_FR]]
   at org.quartz.core.JobRunShell.run(JobRunShell.java:213)
   at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: org.alfresco.service.cmr.repository.ContentIOException: Failed to open stream onto channel:
   accessor: ContentAccessor[ contentUrl=store://2008/10/16/14/43/0b8f1b35-9b80-11dd-bcce-a55278671818.bin, mimetype=null, size=0, encoding=UTF-8, locale=fr_FR]
   at org.alfresco.repo.content.AbstractContentReader.getContentInputStream(AbstractContentReader.java:337)
   at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:858)
   at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:542)
   at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1248)
   at org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:188)
   at sun.reflect.GeneratedMethodAccessor405.invoke(Unknown Source)
   at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
   at java.lang.reflect.Method.invoke(Method.java:585)
   at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
   at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
   at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
   at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
   at $Proxy9.index(Unknown Source)
   at org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
   at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
   … 1 more
Caused by: java.lang.UnsupportedOperationException: The content never exists
   at org.alfresco.repo.content.EmptyContentReader.getDirectReadableChannel(EmptyContentReader.java:59)
   at org.alfresco.repo.content.AbstractContentReader.getReadableChannel(AbstractContentReader.java:226)
   at org.alfresco.repo.content.AbstractContentReader.getContentInputStream(AbstractContentReader.java:330)
   … 17 more
Et c'est qu'un extrait, j'en ai des tartines !

Cela ne semble pas trop perturber Alfresco … quoi que:
Nous relevons des fonctionnements du CIFS aléatoires.
Cela se tarduit par :
A) Des accès en lecture comme en éciture vraiment très lent pour un réseau local (LAN)
B) Des applications qui ne répondent pas pendant un certain temps (ex: Word, message cette application ne réponds pas).
C) Des applications qui considérent dès l'ouverture que le fichier est déjà ouvert par un autre utilisateur (ex: Excel)
D) Des accès au point de montage ou au chemin réseau qui se perdent aléatoirement.

Il y a quelques astuces qui nous permettent de déverrouiller certaines situations :
A) Rien trouvé
B) Retour sur l'explorer CIFS et touhe F5 pour rafraichir, la situation se débloque
C) Dans Excel, choix de l'option "Notifier" et quelques instants après son ouverture le fichier est rendu disponible en écriture.
D)  Appel du serveur CIFS (\\MON_SERVEUR_CIFS) puis double click sur AVM (qui s'ouvre) retour en arrière L'accès au référentiel est à nouveau operationnel.

Même si cela se contourne, ca ne reste que des bidouilles et le temps d'accès (A) reste un point vraiment pénalisant et défavorable.  :mrgreen:
Est-ce que tous ces problémes sont liés, je l'espére: ceux-ci expliqueraient ceux-là !

Aucun soucis côté application WEB. Mais c'est pas le mode d'accès que préfère la majorité de nos utilisateurs. Hélas.

J'ai parcouru à peu près tous les posts sur ces deux sujets, j'ai essayé, je pense de vérifier et de rectifier tout ce qui me semblait pouvoire l'être.
Je ne sais plus où chercher !

Si vous avez la moindre idée, piste ou suggestion ! Je prends. Smiley Very Happy
S'il faut d'autres précisions ! Comptez sur moi.

Merci d'avance.
Nicolas.
7 REPLIES 7

michaelh
Champ on-the-rise
Champ on-the-rise
Bonjour,

CA c'est de la description Smiley Happy
DATA:
NAS NETAPP montage NFS
Est-ce qu'il faut comprendre que l'index Lucene est aussi accédé par NFS ?

nicolas_4463
Champ in-the-making
Champ in-the-making
Bonsoir Michael,
Oui, tout ce qui se trouve habituellement dans /alf_data est, via ce point de montage (pointant sur le NAS en NFS), dans un répertoire unique nommé /content.
Aïe, c'était pas une bonne idée ?  :roll:

Nicolas

rguinot
Confirmed Champ
Confirmed Champ
Si mes souvenirs sont bons, vous pouvez avoir votre repository sur le NAS monté en NFS.
En revanche, ce n'est pas une bonne idée d'y mettre également les indexes Lucene "live".

C'est à dire les propriétés dir.indexes et dir.indexes.lock doivent pointer sur des volumes locaux.
En revanche, il n'est probablement pas nécessaire de mettre les indexes backupés (dir.indexes.backup) en local également étant donné qu'ils ne sont pas utilisés par l'instance qui tourne en production (c'est une recopie N-1 des indexes "live", qui est cronée toutes les nuits par défaut).

Vous pourriez ainsi protéger les indexes J-1 via l'infrastructure de votre NAS (RAID et autres goodies), et avoir les indexes "live" en local.

nicolas_4463
Champ in-the-making
Champ in-the-making
Boujour,
Merci messieurs pour ces indications.
Je vais donc changer le file system des indexes lucene.
Je crois me souvenir avoir eu des problémes lorsque, par la passé, j'avais paramétré dir.root et dir.indexes sur des chemins séparés.
Si j'utilise un subterfuge avec de liens symboliques, pensez-vous que cela pourrait fonctionner ?
ex :
    alf_data sur file system du serveur puis
      contentstore.deleted lien symbolique sur le NAS (NFS).
      audit.contentstore lien symbolique sur le NAS (NFS).
      lucene-indexes sur file system du serveur.
      contentstore lien symbolique sur le NAS (NFS).
      backup-lucene-indexes lien symbolique sur le NAS (NFS).
Merci d'avance pour votre précieuse aide et vos réponses.
Nicolas

michaelh
Champ on-the-rise
Champ on-the-rise
Essayez tout de même de vraiment utiliser les paramètres de configuration. Il n'y a pas de raison pour que ça ne fonctionne pas.
(En gros, les liens symboliques pour ce besoin, même si ça fonctionne, ça me semble un peu gruik …)

nicolas_4463
Champ in-the-making
Champ in-the-making
Bonjour,
Nous avons installé une plate-forme de test sur laquelle j'ai pu effectuer les changements liés à l'indexation Lucene.
J'ai donc :
le dir.root sur un point de montage nfs sur le SAN.
le dir.indexes et dir.indexes.lock sur un autre point de montage vers une LUN netapp en ext2.

Voici la conf de custom-repository.properties :

# Directory configuration

dir.root=/mnt/alfrescovol/alfresco/content

dir.contentstore=${dir.root}/contentstore
dir.contentstore.deleted=${dir.root}/contentstore.deleted

dir.auditcontentstore=${dir.root}/audit.contentstore

# The location for lucene index files
dir.indexes=/mnt/alfresco-indexes/lucene-indexes

# The location for lucene index locks
dir.indexes.lock=${dir.indexes}/locks

Malheureusement, les erreurs d'indexation sont toujours présentes.
Dès la mise en route d'Alfresco, après l'inivite :
15:25:30,309 INFO  [org.alfresco.service.descriptor.DescriptorService] Alfresco started (Community Network): Current version 2.1.0 (484) schema 64 - Installed version 1.2.1 schema 12
15:26:12,113 ERROR [org.quartz.core.JobRunShell] Job DEFAULT.ftsIndexerJobDetail threw an unhandled Exception:
org.alfresco.service.cmr.repository.ContentIOException: Failed to open stream onto channel:
   accessor: ContentAccessor[ contentUrl=store://2008/10/31/15/26/dddbb6ab-a757-11dd-a1f9-9fc96bac0485.bin, mimetype=null, size=0, encoding=UTF-8, locale=fr_FR]
        at org.alfresco.repo.content.AbstractContentReader.getContentInputStream(AbstractContentReader.java:337)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.indexProperty(ADMLuceneIndexerImpl.java:858)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.createDocuments(ADMLuceneIndexerImpl.java:542)
        at org.alfresco.repo.search.impl.lucene.ADMLuceneIndexerImpl.updateFullTextSearch(ADMLuceneIndexerImpl.java:1248)
        at org.alfresco.repo.search.impl.lucene.fts.FullTextSearchIndexerImpl.index(FullTextSearchIndexerImpl.java:188)
        at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
        at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
        at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
        at java.lang.reflect.Method.invoke(Method.java:585)
        at org.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:281)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.invokeJoinpoint(ReflectiveMethodInvocation.java:187)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:154)
        at org.springframework.transaction.interceptor.TransactionInterceptor.invoke(TransactionInterceptor.java:107)
        at org.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:176)
        at org.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:210)
        at $Proxy9.index(Unknown Source)
        at org.alfresco.repo.search.impl.lucene.fts.FTSIndexerJob.execute(FTSIndexerJob.java:52)
        at org.quartz.core.JobRunShell.run(JobRunShell.java:202)
        at org.quartz.simpl.SimpleThreadPool$WorkerThread.run(SimpleThreadPool.java:529)
Caused by: java.lang.UnsupportedOperationException: The content never exists
        at org.alfresco.repo.content.EmptyContentReader.getDirectReadableChannel(EmptyContentReader.java:59)
        at org.alfresco.repo.content.AbstractContentReader.getReadableChannel(AbstractContentReader.java:226)
        at org.alfresco.repo.content.AbstractContentReader.getContentInputStream(AbstractContentReader.java:330)
        … 18 more
Cela se produit alors que je n'ai aucun utilisateur connecté, CIFS activé comme désactivé.
Après cette erreur rien ne se produit. Il faut déposer un nouveau contenu pour qu'une nouvelle erreur soit signalée dans le log.
J'ai vérifier dans le content.dir, effectivement le chemin et le binaire n'existe pas (contentUrl=store://2008/10/31/15/26/dddbb6ab-a757-11dd-a1f9-9fc96bac0485.bin)
Le chemin est valable jusqu'à contentUrl=store://2008/10/31/15 mais 26 n'existe pas j'ai un 25/c58b58c9-a757-11dd-a1f9-9fc96bac0485.bin

C'est à se taper la tête contre un mur  :x

Qu'en pensez-vous ?

Merci d'avance pour votre aide, d'ici là je creuse !
Nicolas

nicolas_4463
Champ in-the-making
Champ in-the-making
Et bein voilà ! C'est résolu  Smiley Surprisedops:
C'est ici que j'ai commencé à entrevoir un début de solution :http://wiki.alfresco.com/wiki/Content_Transformations#Full_Text_Indexing
En lisant ca :
Full Text Indexing
When content is uploaded by whatever means, the indexer component attempts to perform a transformation to plain text. First a ContentTransformer is requested from the ContentTransformationRegistry. If one is available, then the transformation to plain text is performed.

There are three primary modes of transformation failure that are handled internally by the indexer. The indexer indexes some cryptic strings in place of the actual content (which is unavailable) in order to allow searching for content that experienced problems. The following can be searched for:

nint - content not indexed due to no transformation to text being available
nitf - content not indexed due to transformation failure
nicm - content not indexed due to missing content
Note: Currently, the POI Excel to Text library may dump an exception to the console if the transformation failed. We have no control over this output.
J'ai donc fais un recherche avec "nicm" est je suis tombé sur ce bug : https://issues.alfresco.com/jira/browse/ALFCOM-1140 qui m'a conduit à ce post : http://forums.alfresco.com/en/viewtopic.php?f=9&t=7293&st=0&sk=t&sd=a
C'est ici que j'ai vu le bout du tunnel  Smiley Happy
En fait, ce sont les indexations des messages outlook déposés dans Alfresco qui semaient la pagaille !
Je suis allé dans le fichier de configuration : content-services-context.xml et j'ai commenté cette section :
   <!– <bean id="transformer.OutlookMsg"
         class="org.alfresco.repo.content.transform.MailContentTransformer"
         parent="baseContentTransformer" /> –>
Redémarrage d'Alfresco… plus d'erreurs.
Ouf, il ne me reste plus qu'à me concentrer sur mes problémes de performances douteuses avec CIFS (je vous tiens au courant).

Merci pour votre aide.

Nicolas
Getting started

Tags


Find what you came for

We want to make your experience in Hyland Connect as valuable as possible, so we put together some helpful links.