On 02/22/10 10:01 AM, Alan Maguire wrote:
> On 22/02/2010 17:56, Tony Nguyen wrote:
>> On 02/22/10 09:49 AM, Alan Maguire wrote:
>>> On 22/02/2010 17:26, Sean Wilcox wrote:
>>>> Alan Maguire wrote:
>>>>> hi folks
>>>>>
>>>>> I was wondering if there have been any other cases where the
>>>>> above has been observed - a valid manifest appears to
>>>>> be imported, a manifest hash that looks correct is present
>>>>> (ensuring that reimport won't work until we delete the
>>>>> service with "svccfg delete -f") but property groups are
>>>>> missing (specifically  the service dependencies, dependents
>>>>> and all its methods - start,stop,refresh). I can't see any complaints
>>>>> in the manifest-import or startd logs, the former actually seems to
>>>>> be adding the relevant manifest, with the following line in the log:
>>>>>
>>>>> add_manifest network/location  
>>>>> /var/svc/manifest/network/network-location.xml
>>>>>
>>>>> Even if I delete the manifest hash propertygroup in smf/manifest,
>>>>> the service is reimported but the properties still don't appear -
>>>>> a delete -f on the service is required to get the properties back.
>>>>> Are there any known manifest-import issues that might explain
>>>>> this? Is there any more info I can collect that might help shed light
>>>>> on what's going on? It doesn't appear that startd or configd
>>>>> have died - no corefiles appear etc. BTW we're seeing this for the
>>>>> first time since merging with snv_134, and after fresh install to 
>>>>> recent
>>>>> Nevada build + BFU of project bits, but on sparc only.
>>>>>
>>>>> Thanks!
>>>>>
>>>>> Alan
>>>>> _______________________________________________
>>>>> smf-discuss mailing list
>>>>> smf-discuss at opensolaris.org
>>>>>
>>>>>
>>>> If you manually import the service with svccfg -v import <manifest> 
>>>> any additional information given?
>>>>
>>> Yep, manual import works fine - see below for
>>> output.
>>>
>>>> When you say recent Nevada build, what is that build?
>>> The base build (installed via JumpStart) was snv_130, on
>>> top of which I bfu'ed project bits synced with snv_134.
>>>> The reason the add_manifest message is something that's
>>>> added if you are not using a recent svccfg to import the manifest, 
>>>> because it's not getting the manifestfile <-> service
>>>> connection created via svccfg, but manifest-import is upgrading the 
>>>> service to make that connection.
>>>>
>>> Hmm, the weird thing is though that even post-BFU,
>>> if I delete the location service and reboot, these properties
>>> are still missing after re-import. However if I "svccfg delete -f"
>>> and manually "svccfg import", rather than via manifest-import,
>>> all is well. Here's an example of where I "svccfg delete -f" and 
>>> reboot.
>>> The properties are missing,but when I "svccfg delete -f" and manually
>>> "svccfg import", they appear. When I "svccfg delete -f" and reboot, 
>>> I see:
>>>
>>> Loaded 1 smf(5) service descriptions
>>>
>>> ...in the manifest-import log.
>>>
>>> And after removal + reboot of the location service,
>>> the properties look like this:
>>>
>>> # svcprop location
>>> location_netcfg/entities fmri svc:/network/netcfg
>>> location_netcfg/external boolean true
>>> location_netcfg/grouping astring require_all
>>> location_netcfg/restart_on astring none
>>> location_netcfg/type astring service
>>> general/enabled boolean false
>>> restarter_actions/auxiliary_tty boolean false
>>> restarter_actions/auxiliary_fmri astring svc:/network/physical:nwam
>>> restarter_actions/refresh integer
>>> general_ovr/enabled boolean true
>>> restarter/auxiliary_state astring none
>>> restarter/logfile astring /var/svc/log/network-location:default.log
>>> restarter/next_state astring none
>>> restarter/state astring online
>>> restarter/state_timestamp time 1266860005.834828000
>>
>> Is the location service delivered enabled? It looks like location 
>> service is enabled by another service.
>>
> It's delivered disabled since it's only used if NWAM is
> running. If the network/physical:nwam is enabled, it
> will in turn enable network/location. On first reboot
> post-upgrade, physical:nwam will try and enable -t
> location:default, and since manifest-import
> has not run, the latter is not present. Could this be a
> factor? Thanks!
>
> Alan

Ah, I should have seen physical:nwam in the auxiliary_fmri property. 
This is similar to the bug we discovered during Early Import testing.

Properly imported service instances are expected to have last-import 
snaphots which svccfg import uses to perform property upgrades. When a 
service is missing last-import snapshots but have 'enabled' properties, 
svccfg import assumes such service to be properly imported and only 
generated last-import snapshot for it. That is, last-import snapshot 
capable svccfg was introduced after the initial integration of SMF thus 
we simply upgrade services by adding last-import snapshot.

When a service created by dependent definition, network/netcfg defines 
location service as dependent, location service doesn't have a 
last-import snapshot. physical:nwam comes along and enables location 
which populated location's general/enabled property. Since location 
service is missing last-import snapshot but it has general/enabled 
property, svccfg import would not properly import the service.

The good news is that Early Manifest Import will solve this issue.

-tn



Reply via email to