Kbase P133906: Source transaction hangs after target client fails: cxSearchTree
Autor |
  Progress Software Corporation - Progress |
Acesso |
  Público |
Publicação |
  05/07/2010 |
|
Status: Verified
SYMPTOM(s):
Source transaction hangs after target client fails: cxSearchTree
cxSearchTree: ERO Reader Invalid block number 0 found on a find operation - operation failed
stopping RPLS on source hangs with: dsrutil bank -C terminate server
RPLS cannot be disconnected with: proutil bank disconnect <id RPLS>
RPLS needs to be killed with OS utilities
target transaction activity stopped filling RPLS queue
dsrutil bank -C monitor on bankier3 shows Repl Server behind Source DB by: 3412 second(s) , 137364 blok(s) increasing and then not changing
when target datbase is restarted the dsrutil bank -C monitor stats start increasing and eventually recovering
FACT(s) (Environment):
Progress 9.x
OpenEdge 10.0x
OpenEdge 10.1x
OpenEdge Replication
All Supported Operating Systems
CAUSE:
Bug# OE00162605
CAUSE:
Congruency issue where after ERO client receives incomplete or invalid index block information as a result of the violation of the locking protocol of the index manager by the replication agent. This timing issue is triggered by index split operations and index block removal operations being replicated by the agent from source database activity.
When an index split/removal operation being replicated by the agent while a 4GL/ABL ERO reader is reading on this index - the reader gets hung in cxLocateValidBlock and ends up starving the repl agent - hence the transaction activity suspended.
FIX:
Upgrade to OpenEdge 10.2A where the Replication optermistic locking protocol has been changed.
Workaround:
Restart the Target database and Replication Server on the source database. These errors are not indications of any corruption, they are in effect 'dirty index reads'.