Cold Standby renvoie l’erreur "L’enregistrement DataStoreException n’existe pas"

Description description

Environnement
Adobe Experience Manager

Problème
Cold Standby avec l’entrepôt de données de fichiers dédié lance un avertissement sur l’ID d’objet blob manquant, similaire à l’erreur ici :

*WARN* standby-run-1 org.apache.jackrabbit.oak.plugins.blob.datastore.DataStoreBlobStore Error occurred while loading bytes from steam while fetching for id f68a92b34779bbd194184251ec916370f3ebd301d6e32a8980aad070d57a1845#25522

java.util.concurrent.ExecutionException: java.io.IOException: org.apache.jackrabbit.core.data.DataStoreException: Record f68a92b34779bbd194184251ec916370f3ebd301d6e32a8980aad070d57a1845 does not exist

    at org.apache.jackrabbit.oak.cache.CacheLIRS$Segment.load(CacheLIRS.java:1017) org.apache.jackrabbit.oak-core-spi:1.10.3

...

Caused by: org.apache.jackrabbit.core.data.DataStoreException: Record cabdc49c6562afe71da796b57c2d1a6a3495026dfafff4d1073f1935a2c49c20 does not exist

    at org.apache.jackrabbit.core.data.AbstractDataStore.getRecord(AbstractDataStore.java:59)

Cause
Ce n'est qu'un avertissement, pas une erreur.

Cela vient du fait que l’entrepôt de données de fichier n’a aucun moyen de vérifier si un fichier binaire existe localement, sauf en essayant de charger l’ID d’objet blob.
Si l’ID est chargé, les journaux n’affichent pas cet avertissement.
Cependant, s’il est introuvable, l’instance de secours sait qu’elle doit le synchroniser, c’est pourquoi ce type d’avertissement s’affiche dans les journaux.

Résolution resolution

Solution
Cela fonctionne comme prévu et n’indique pas de problème avec l’entrepôt de données de fichiers.

Pour confirmer que l’ID d’objet blob n’est pas absent, procédez comme suit :

  1. Par exemple, prenez votre exemple d’ID d’objet blob qui s’affiche comme manquant dans les journaux (par exemple : cabdc49c6562afe71da796b57c2d1a6a3495026dfafff4d1073f1935a2c49c20).
  2. Pour cet ID d’objet blob dans cet exemple, l’adresse du système de fichiers doit être : ca/bd/c4/9c6562afe71da796b57c2d1a6a3495026dfafff4d1073f1935a2c49c20.
  3. Recherchez le système de fichiers sur l’instance de secours et vérifiez si le fichier nommé est présent dans l’entrepôt de données de fichiers.
  4. Within /repository/datastore, utilisez le list (Par exemple : ls -ald), commande : ls -ald ca/bd/c4/9c6562afe71da796b57c2d1a6a3495026dfafff4d1073f1935a2c49c20.
  5. Vous devriez être en mesure de voir le fichier et de confirmer que l’ID d’objet blob n’est pas absent.
recommendation-more-help
3d58f420-19b5-47a0-a122-5c9dab55ec7f