本頁提供了有關如何排除複製問題的資訊。
複製(非反向複製)因某些原因而失敗。
複製失敗有各種原因。 本文就這些問題的分析作了說明。
按一下「激活」按鈕時,複製是否會觸發?如果為NOT,請執行下列動作:
複製是否在複製代理隊列中排隊?
請前往/etc/replication/agents.author.html,然後按一下複製代理以檢查,以檢查此項。
如果一個代理隊列或幾個代理隊列被卡住:
佇列是否顯示blocked狀態? 如果是,則發佈執行個體是否未執行或完全沒有回應? 檢查發佈實例以查看其中有什麼問題(例如,檢查日誌,並查看是否存在OutOfMemory錯誤或其他問題。 然後,如果執行緒轉儲通常很慢,請提取線程轉儲並分析它們。
隊列狀態是否顯示隊列處於活動狀態- # pending? 基本上,復製作業可能會卡在套接字讀取中,等待pubilsh實例或調度程式作出響應。 這可能表示發佈實例或調度程式處於高負載狀態或卡在鎖中。 從作者處取出執行緒轉儲,並在此案例中發佈。
如果所有代理隊列都被卡住
由於儲存庫損壞或某些其他問題,某段內容可能無法在/var/replication/data下序列化。 檢查logs/error.log中是否有相關錯誤。 要清除錯誤的複製項,請執行以下操作:
sling事件架構工作佇列可能有問題。 嘗試在/system/console中重新啟動org.apache.sling.event套件。
可能是工作處理完全關閉。 您可以在Felix Console的Sling Eventing Tab下檢查此項目。 檢查是否顯示- Apache Sling Eventing(JOB PROCESSING IS DISABLED!)
DefaultJobManager配置也可能進入不一致狀態。 當某人透過OSGiconsole手動修改「Apache Sling Job Event Handler」設定時,就會發生這種情況(例如,停用並重新啟用「Job Processing Enabled」屬性,並儲存設定)。
建立replication.log
有時,將所有複製記錄設定為在DEBUG級別的單獨日誌檔案中添加,會非常有用。 要執行此操作:
前往https://host:port/system/console/configMgr,以管理員身分登入。
尋找Apache Sling Logging Logger工廠,並按一下工廠設定右側的+按鈕建立例項。 This will create a new logging logger.
將配置設定為如下:
如果您懷疑問題與sling eventing/jobs有任何關聯,則您也可以將此java套件新增至categories:org.apache.sling.event
有時,可以暫停複製隊列以減少作者系統上的負載,而不禁用它。 目前,只有通過臨時配置無效埠的攻擊才能做到這一點。 從5.4開始,您可以在複製代理隊列中看到暫停按鈕,它有一些限制
頁面權限不會複製,因為這些權限會儲存在授予存取權的節點下,而不是儲存在使用者下。
一般而言,頁面權限不應從作者複製以發佈,而且預設不會複製。 這是因為這兩種環境中的存取權限應該不同。 因此,建議在發佈時與作者分開配置ACL。
在某些情況下,當嘗試將命名空間資訊從作者實例複製到發佈實例時,複製隊列會被阻止。 這是因為複製用戶沒有jcr:namespaceManagement
權限。 若要避免此問題,請確定:
jcr:namespaceManagement
權限。 您可以按如下方式授予權限:https://localhost:4502/crx/de/index.jsp
)。jcr:namespaceManagement
。