- **status**: review --> fixed
- **Comment**:

changeset:   7164:c0d0d0b6c5c4
tag:         tip
parent:      7162:ef5fb872bddf
user:        Lennart Lund <[email protected]>
date:        Wed Dec 09 13:55:15 2015 +0100
summary:     lgs: Correcting OI initializing thread handling [#1527]

rev: c0d0d0b6c5c445aa24698b7448a44110e52af48b

changeset:   7163:d5bfe1044dbe
branch:      opensaf-4.7.x
parent:      7161:93df04ded5e1
user:        Lennart Lund <[email protected]>
date:        Wed Dec 09 13:55:15 2015 +0100
summary:     lgs: Correcting OI initializing thread handling [#1527]

rev: d5bfe1044dbe08deb2eba6761919952f06467564



---

** [tickets:#1527] log: terminated due to use SaImmOiHandleT concurrently from 
02 threads**

**Status:** fixed
**Milestone:** 4.7.1
**Created:** Wed Oct 07, 2015 10:59 AM UTC by Vu Minh Nguyen
**Last Updated:** Wed Dec 09, 2015 12:51 PM UTC
**Owner:** elunlen


When standby takes active role, "new" active logsv starts one thread 
`imm_impl_restore_thread` to set OI implementer for LOG service. In the 
meantime, the main thread is still there, ready to receive any coming requests. 

So, the picture here is there are 02 threads using one OiHandle concurrently - 
`imm_impl_restore_thread` and main thread. It violates the IMM rule, stated in 
IMM PR doc, 
`"the developer must avoid using the same handle concurrently from several 
threads."`

In the trace log below, there are 02 problems caused by using OiHandle in 02 
different threads:
1) Get `ERR_BAD_OPERATION` as do request to IMM while no implementer have been 
set.

> Sep 17 18:22:04 SC-2 osaflogd[15047]: NO ACTIVE request 
Sep 17 18:22:04 SC-2 osaflogd[15047]: ER ERR_BAD_OPERATION: The SaImmOiHandleT 
is not associated with any implementer name
...
> Sep 17 18:22:04 SC-2 osafimmnd[15026]: NO Implementer connected: 211 
> (safLogService) <7, 2020f> 

2) Get `ERR_LIBRARY` as double LOCK from IMM side, logsv terminated.

> Sep 17 20:07:59 SC-2 osafimmnd[14962]: NO Implementer connected: 401 
> (safLogService) <7, 2020f>
...
Sep 17 20:07:59 SC-2 osaflogd[14975]: saImmOiClassImplementerSet FAILED, rc = 2
….
Sep 17 20:08:09 SC-2 osafamfnd[15047]: NO 
'safComp=LOG,safSu=SC-2,safSg=2N,safApp=OpenSAF' faulted due to 'avaDown' : 
Recovery is 'nodeFailfast'
Sep 17 20:08:09 SC-2 osafamfnd[15047]: ER 
safComp=LOG,safSu=SC-2,safSg=2N,safApp=OpenSAF Faulted due to:avaDown Recovery 
is:nodeFailfast



---

Sent from sourceforge.net because [email protected] is 
subscribed to https://sourceforge.net/p/opensaf/tickets/

To unsubscribe from further messages, a project admin can change settings at 
https://sourceforge.net/p/opensaf/admin/tickets/options.  Or, if this is a 
mailing list, you can unsubscribe from the mailing list.
------------------------------------------------------------------------------
_______________________________________________
Opensaf-tickets mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensaf-tickets

Reply via email to