Hi Mahesh,
If in the threading case as in 2PBE, if thread does not get lock it will
not wait indefinitely,
There is timeout mechanism and after timeout SA_AIS_ERR_FAILED_OPERATION
will be returned.
As in the case of 2PBE if thread1 takes lock, and fails in BEGIN
TRANSACTION(case where thread1
Hi Neel,
My quick comment is instead of incrementing `sqliteTransLock`
and decrement the `sqliteTransLock` (rollback Lock) on failure,
do take/increment `sqliteTransLock` on success of 'BEGIN EXCLUSIVE TRANSACTION'.
In current patch approach , in case of 2 PBE, if 1st PBE thread do
`sqliteTra
Summary: imm:Decrement sqliteTransLock when BEGIN EXCLUSIVE TRANSACTION fails
[#1426]
Review request for Trac Ticket(s): 1426
Peer Reviewer(s): AndersBj, Zoran, Mahesh
Affected branch(es): 4.5.x, 4.6.x, default
Development branch: default
Impacted area Impac
osaf/libs/common/immsv/immpbe_dump.cc | 1 +
1 files changed, 1 insertions(+), 0 deletions(-)
There is a chance that NFS/shared-storage may re-attach after few seconds, and
transaction is not yet started, so decrement the sqliteTransLock in
pbeBeginTrans which releases the lock
diff --git a/
Summary: imm: Agent crash leaving zombie OI [#1424]
Review request for Trac Ticket(s): 1424
Peer Reviewer(s): AndersBj, Neelakanta, Zoran
Pull request to: Zoran
Affected branch(es): default(4.7), 4.6, 4.5
Development branch: default(4.7)
Impacted area Impact
osaf/services/saf/immsv/immnd/immnd_evt.c | 20 ++--
1 files changed, 18 insertions(+), 2 deletions(-)
If IMMND gets IMMA DOWN event before receiving IMMND_EVT_D2ND_IMPLSET_RSP,
IMMND will fail to discard the implementer because the implementer is not added
to immModel. That w