- **status**: review --> fixed
- **Comment**:
changeset: 6965:9c236928fc99
parent: 6962:38d62e4723f7
user: [email protected]
date: Thu Oct 01 15:16:19 2015 +0530
summary: amf: fix spec deviation of surestart escalation [#315]
changeset: 6964:77eec8b9b0ef
branch: opensaf-4.6.x
parent: 6959:f6ea7df23b04
user: [email protected]
date: Thu Oct 01 15:15:40 2015 +0530
summary: amf: fix spec deviation of surestart escalation [#315]
changeset: 6963:582475094724
branch: opensaf-4.5.x
parent: 6958:4a830a35990f
user: [email protected]
date: Thu Oct 01 15:14:52 2015 +0530
summary: amf: fix spec deviation of surestart escalation [#315]
---
** [tickets:#315] SU restart not according to spec**
**Status:** fixed
**Milestone:** 4.5.2
**Created:** Fri May 24, 2013 08:35 AM UTC by Nagendra Kumar
**Last Updated:** Fri Sep 18, 2015 06:43 AM UTC
**Owner:** Praveen
Migrated from http://devel.opensaf.org/ticket/3061
First issue:
=====================
When testing http://devel.opensaf.org/ticket/3056 I found the problem that SU
restart does not follow the instantiation level as supposed to:
spec 3.8.2
"Within a service unit, the Availability Management Framework terminates the
pre-instantiable components according to the configured instantiation level.
All pre-instantiable components with the same instantiation level are
terminated by the Avail-
ability Management Framework in parallel. Pre-instantiable components of a
given level are only terminated by the Availability Management Framework when
all pre-instantiable components with a higher instantiation level have been
terminated.
As has been said previously, the instantiation level is only applicable during
service unit instantiation and termination. As restarting a service unit means
terminating the
service unit and instantiating it again, the instantiation level also applies
when restart-ing a service unit."
It is obvious from the code in avnd_su_pres_inst_surestart_hdler():
/*
•If pi su, pick the first pi comp & trigger it's FSM with RestartEv?. */
if (m_AVND_SU_IS_PREINSTANTIABLE(su)) {
TRACE("PI SU:'%s'",su->name.value);
for (curr_comp =
m_AVND_COMP_FROM_SU_DLL_NODE_GET(m_NCS_DBLIST_FIND_FIRST(&su->comp_list));
should pick the last component since this list is sorted by the instantiation
level.
Second issue:
================
3.11.1.2:
"Restarting a service unit is achieved by the following actions:
• First, all components in the service unit are terminated in the order
dictated by their instantiation-levels.
• In a second step, all components in the service unit are instantiated
in the order dictated by their instantiation-levels."
That is not the case today since each component is restarted (not terminated
and instantiated)
---
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