Consultor Eletrônico



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'.