Yes it is reproducible with stop/start exec methods also.This service which
is online is not attempted to be disabled (temporarily) by svc.startd deamon
when shutdown command is given. It is behaving in such manner in solariss 10
update 5 but this scenario works fine in solaris 10 update 3.

~Ashish


On 6/10/08, Renaud Manus <Renaud.Manus at sun.com> wrote:
>
> Your services don't have exec methods. Can you still reproduce it with the
> mandatory start/stop exec methods ?
>
> -- Renaud
>
> Ashish Kulshrestha wrote:
>
>> Hi David
>> I got an issue in the solaris 10 update 5 in shutdown in stopping the
>> services which are "exclude_all" dependent.
>> Steps to reproduce :
>> 1.create a file /A.xml :
>> =====================================
>> <?xml version="1.0"?>
>> <!DOCTYPE service_bundle SYSTEM
>> "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
>> <service_bundle type='manifest' name='A'>
>> <service
>>        name='A'
>>        type='service'
>>        version='1'>
>>        <single_instance />
>>        <dependency
>>                name='A_exclude_B'
>>                type='service'
>>                grouping='exclude_all'
>>                restart_on='refresh'>
>>                <service_fmri value='svc:/B' />
>>        </dependency>
>>        <property_group name='startd' type='framework'>
>>                <propval name='duration' type='astring' value='transient'
>> />
>>        </property_group>
>>        <instance name='default' enabled='false' />
>>        <template>
>>                <common_name>
>>                        <loctext xml:lang='C'>
>>                                A service
>>                        </loctext>
>>                </common_name>
>>        </template>
>> </service>
>> </service_bundle>
>> ===============================================
>> 2. create another file /B.xml
>> ===============================================
>> <?xml version="1.0"?>
>> <!DOCTYPE service_bundle SYSTEM
>> "/usr/share/lib/xml/dtd/service_bundle.dtd.1">
>> <service_bundle type='manifest' name='B'>
>> <service
>>        name='B'
>>        type='service'
>>        version='1'>
>>    <single_instance />
>>        <property_group name='startd' type='framework'>
>>                <propval name='duration' type='astring' value='transient'
>> />
>>        </property_group>
>>        <instance name='default' enabled='false' />
>>        <template>
>>                <common_name>
>>                        <loctext xml:lang='C'>
>>                                B service
>>                        </loctext>
>>                </common_name>
>>        </template>
>> </service>
>> </service_bundle>
>> ========================================================
>> 3. svccfg import /A.xml
>> 4. svccfg import /B.xml
>> 5. svcadm enable A
>> 6. svcadm enable B
>> 7.shutdown -i6 -g5 -y
>>  It hangs the system.If I login to the machine before giving shutdown
>> command through ssh it shows me that the service "B" is online with the only
>> service "svc:/system/svc/restarter:default". This behaviour can not be
>> reproduced in the Solaris 10 update 3.
>>  Thanks and regards,
>> Ashish Kulshrestha
>>
>>
>>  On 6/9/08, *David Bustos* <David.Bustos at sun.com <mailto:
>> David.Bustos at sun.com>> wrote:
>>
>>    Quoth Ashish Kulshrestha on Mon, Jun 09, 2008 at 09:28:20PM +0530:
>>     > online.As soon as I disabled it the shutdown which was hanged is
>>    resumed. I
>>     > have to use dependent tag in my manifest file as the dependency
>>    tag is
>>     > not starting my service at a particular milestone using the "*boot
>> -m
>>     > milestone=multi-user*" from ok prompt.
>>
>>    Did you try booting without -m milestone=multi-user, or with
>>    "-m milestone=all"?
>>
>>     > My question  :
>>     > Is SMF framework wont issue any command to stop the service in
>>    graceful
>>     > shutdown ? Is it just stops the milestone and rest is taken care
>>    by order of
>>     > dependency of services ?
>>     > What happen if a service is isolated ( no dependent or dependency in
>>     > manifest file).
>>
>>    svc.startd should temporarily disable the services which have no
>>    dependents by executing their stop methods.  As each service is
>> stopped,
>>    it should again temporarily disable the services which have no
>>    dependents, until all services are stopped.
>>
>>    Did you make sure that the system was finished booting (svcs didn't
>>    report any services with asterisks after their state) before executing
>>    shutdown?
>>
>>
>>    David
>>
>>
>>
>> ------------------------------------------------------------------------
>>
>> _______________________________________________
>> smf-discuss mailing list
>> smf-discuss at opensolaris.org
>>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://mail.opensolaris.org/pipermail/smf-discuss/attachments/20080611/af729d5f/attachment.html>

Reply via email to