Replication fails when multiple records are trapped in the replication queue.
Symptoms
If several records are trapped in the replication queue,
including a stop replication, the document is never de-replicated.
Consider the following scenario:
- A document in the replication queue becomes corrupted.
- Select a mapped FileNet® Image Services document
class that has a numeric property with a mask.
- On Content Platform Engine, create
a document that successfully fits in the mask. The document replicates
to FileNet Image Services.
- From FileNet Image Services, add
several annotations. The annotations federate to Content Platform Engine.
- From Content Platform Engine,
update a property that does not fit into the FileNet Image Services numeric mask. Errors are
logged on both the Content Platform Engine and
the FileNet Image Services systems.
The document is marked FAILED and WAITING, and remains in the replication
queue.
- From Administration Console for Content Platform Engine, update
the properties in an attempt to fix them. The second attempt to update
the document is marked WAITING and UPDATE in the replication queue.
No error is logged on the FileNet Image Services system.
- From Content Platform Engine,
update a different property on the document. A third UPDATE entry
is added to the update queue with a status of waiting. The property
updates do not replicate to the FileNet Image Services system.
- Try to correct the error.
- From Content Platform Engine,
de-replicate the document.
- On the Content Platform Engine,
the External Replica (the FileNet Image Services document
ID) is not deleted from the document properties.
- On the FileNet Image Services system,
use the MKF_tool utility to see that ce_os_id in
the docs table of the MKF permanent database is not removed from the
document properties.
- Also on the FileNet Image Services system,
use a relational database query tool to see that f_ce_os_id in
the ce_id_map table of the index database is not removed from the
document properties.
- From Content Platform Engine,
delete an annotation from the document. The annotation is also deleted
from the document on the FileNet Image Services system.
- Update the document properties on Content Platform Engine to correct the
beahavior. There are no updates on the FileNet Image Services system, but a new
entry is added to the replication queue.
- Remove the corrupted record from the replication queue. (Other records in the replication queue
are not deleted.) If other records are not trapped in the replication queue, the corrupted document
de-replicates correctly. However, if other updates to the same document are trapped in the
replication queue, the document never de-replicates correctly.
Diagnosing the problem
Whenever a journal is marked as corrupted, all subsequent
journals for that same object are trapped in the replication queue.
You must fix the problem, but more importantly, you must reprocess
or delete the journal.
When you de-replicate the document, only the replication group in the document is reset
immediately. A journal is created for the de-replicate during the journal processing, which can be
much later. The journal processing resets the external identity in the document and the replication
group and external identity in the associated annotations.
Because there is a corrupted journal for this document, the de-replicate journal remains in the
queue. For this reason, the f_ce_os_id value in the FileNet Image Services document is not removed. Because the de-replicate journal was not
processed, the replication group is still in the annotation, any updates or deletions to the
annotation replicate to FileNet Image Services, and the annotation journals are
not blocked by the corrupted journal for the document. In general, to correct any failed situation,
the first step is to look at and understand the reason why the journal failed, then reprocess or
delete the corrupted journal. That corrupted journal must be gone before you make further changes to
the document.
Resolving the problem
Remove all journals in the replication queue for the specific
document before you make further updates to FileNet Image Services.