Hi Sundar,

On 03/09/09 08:41, Sundar Yamunachari wrote:
> Jan,
>
>     I will review your code again after your Sue's code push.

Since Sue has already integrated,  I have merged with her stuff,
accommodated fix taking into account new format of service
database, recreated test AI images and went through the same
set of testing procedures I used initially.

Could you please take a look at updated webrev ?
http://cr.opensolaris.org/~dambi/bug-6320-merged/

Thank you,
Jan


>
> jan damborsky wrote:
>> Hi Sundar,
>>
>> thank you very much for your comments,
>> please see my responses in line.
>>
>> Speaking about some logistic challenges, I was talking
>> to Sue yesterday and it turned out that we will need
>> to synchronize our pushes in some way as she is in the same
>> code right now.
>>
>> The issue is that as part of my fix I implemented API
>> in shell script part of installadm tools for looking up
>> service database for information about service location.
>>
>> Sue yeasterday and you below pointed out that format of
>> this database will be completely redesigned - thus this
>> part of code will have to be reimplemented taking into
>> account new format of database.
>>
>> I could push and let Sue merge with her changes, but if
>> I understand correctly Jean depends on Sue's fix.
>>
>> As merging process and retesting would take some time,
>> my push would mean additional delay for Jean's changes.
>>
>> Based on this, I might recommend I would wait with my
>> push letting Sue integrate first and after that I would
>> merge with her changes (it would basically mean to
>> reimplement API for accessing service database), ask
>> you for reviewing just that part (as you suggested below),
>> retest and push.
>>
>> That could be done concurrently with what Jean is working on,
>> since I think me and Jean don't depend on each other. Then I
>> think delay should be minimized.
>>
>> Please let me know, what you think,
>> Jan
>>
>>
>>
>> On 03/06/09 03:16, Sundar Yamunachari wrote:
>>> Jan,
>>> *
>>> usr/src/cmd/auto-install/svc/auto-installer:*
>>>
>>> 73-87: Is it possible to have AI_SERVICE_ADDRESS with a valid value 
>>> and AI_SERVICE_NAME as NULL? If it is not valid, you can exit at 98. 
>>
>> Thanks for pointing this out - this case is not valid - 'install_service'
>> option is mandatory and should be always provided by AI server.
>> I will exit at 98 with failure message and remove code at 104-109.
>>
>>> If it is possible, then 104-109 needs to be looked carefully. If the 
>>> AI_SERVICE_NAME is NULL, it will look for default service and it may 
>>> pick up a wrong service and will not look at AI_SERVICE_ADDRESS value.
>>>
>>> 120: Can you add the service name to the echo statement so that it 
>>> will tell what service we are looking for.
>>
>> Done.
>>
>>>
>>> *usr/src/cmd/installadm/create-client.sh:*
>>>
>>> This code to find the txt-record will have to undergo changes 
>>> because service_data file will be replaced by either SMF property 
>>> groups or one file per service in the directory 
>>> /var/installadm/services. I will hold off reviewing this code till 
>>> tomorrow.
>>
>> ok - please see my comment above.
>>
>>>
>>> *usr/src/cmd/installadm/setup-sparc.sh:*
>>>
>>> 73: just a nit: Add a space before '='
>>
>> I think that space is not allowed in assignments, I have
>> tried but it failed in that case.
>>
>>>
>>> *usr/src/cmd/installadm/setup-tftp-links.sh*
>>>
>>> 46: You are setting SERVICE_ADDRESS here but it is not used in the 
>>> file. why is it needed?
>>
>> This mechanism is used for passing parameters to functions
>> defined in installadm-common.sh - create_menu_lst_file
>> in our particular case. I am not sure why this approach was
>> originally taken, but seems like a good candidate for refactoring -
>> it is confusing and error prone.
>> Should I file bug for this or might there be desire for redesigning
>> installadm tools and reimplement them in Python language - having thought
>> about the challenges we will encounter in future with respect to 
>> discussed
>> requirements (working in heterogeneous environment, need for abstracted
>> API, being able to plug-in into different kind of implementations
>> of consumed technologies), I would vote for this :-)
> Please file a bug with this information. When we take up refactoring, 
> we will make sure that this gets fixed.
>
> - Sundar
>>
>>>
>>> Thanks,
>>> Sundar
>>>
>>> jan damborsky wrote:
>>>> Hi Sundar, Sue,
>>>>
>>>> could I please ask you for reviewing changes for following bug ?
>>>>
>>>> 6320 'No valid AI service found' error if AI client and server are 
>>>> on different subnets
>>>> http://defect.opensolaris.org/bz/show_bug.cgi?id=6320
>>>>
>>>> webrev:
>>>> http://cr.opensolaris.org/~dambi/bug-6320/
>>>>
>>>> Other comments are also appreciated.
>>>> Thank you very much,
>>>> Jan
>>>>
>>>> modules affected:
>>>> * AI image (/lib/svc/method/auto-installer)
>>>> * installadm(1M) tools - no API changes, only internal ones
>>>>
>>>> Comparing to the short proposal sent for this fix, following 
>>>> modifications
>>>> were introduced during the implementation:
>>>>
>>>> 'install_svc_address' option will be implemented instead of
>>>> originally proposed 'install_service_address'
>>>>
>>>> The reason is that when old AI image was configured using new
>>>> installadm(1M), AI client was originally confused by new option,
>>>> since it was not able to distinguish between 'install_service'
>>>> (used for service name) and 'install_service_address'.
>>>> That would mean that installadm tools with fix for 6320 couldn't
>>>> install older images and vice versa.
>>>>
>>>> While I was in that code, I also did additional changes:
>>>>
>>>> * clean up cstyle issues reported by 'hg pbchk'
>>>>
>>>> * check if the server hostname is resolved correctly
>>>>  (to something else than '127.0.0.1') when creating
>>>>  service . It serves as a stop gap before full check for
>>>>  correct network configuration is implemented.
>>>>  It saves time in situations when user creates service without
>>>>  verifying that resolver correctly resolves server hostname -
>>>>  user is informed and service is not created.
>>>>  It is helpful, since it was not straightforward to recover
>>>>  from that situation.
>>>>
>>>> Testing
>>>> -------
>>>> HW:
>>>> * AI server - Laptop Lenovo X61, Virtual Box guest
>>>> * router    - Ultra 20
>>>> * AI client -
>>>>  - x86: Ultra 20 (1GB RWM)
>>>>  - Sparc: T1000(8GB RWM)
>>>>  - Virtual Box guest
>>>>  - w2100z (2GB RWM) - connected to different subnet via router
>>>>
>>>> SW:
>>>> * AI image created based on build 108 w/o the fix [img]
>>>> * AI image created based on build 108 w/ the fix  [img_6320]
>>>> * installadm w/o the fix [ai_tools]
>>>> * installadm w the fix [ai_tools_6320]
>>>> * installation done from http://ipkg.sfbay/dev
>>>>
>>>> Test cases
>>>> ----------
>>>> [1] service created using [ai_tools], [img_6320] added
>>>> # installadm create-service -s [img_6320] <path>
>>>> - menu.lst didn't contain 'install_svc_address' option
>>>> - AI client on the same subnet installed successfully
>>>> - AI client on different subnet failed during service discovery
>>>> - AI client set up as guest in Virtual Box failed during service 
>>>> discovery
>>>>
>>>> [2] service created using [ai_tools_6320], [img] added
>>>> # installadm_6320 create-service -s [img] <path>
>>>> - menu.lst contained 'install_svc_address' option
>>>> - AI client on the same subnet installed successfully
>>>> - AI client on different subnet failed during service discovery
>>>> - AI client set up as guest in Virtual Box failed during service 
>>>> discovery
>>>>
>>>> [3] service created using [ai_tools_6320], [img_6320] added
>>>> # installadm_6320 create-service -s [img_6320] <path>
>>>> - AI client on the same subnet installed successfully
>>>> - AI client on different subnet installed successfully
>>>> - AI client set up as guest in Virtual Box installed successfully
>>>>
>>>>
>>>> step [3] was also tested in following scenarios
>>>> [A] service already existed, only image was added
>>>> # installadm_6320 list
>>>> _install_service_46501
>>>> # installadm_6320 create-service -n _install_service_46501 -s 
>>>> [img_6320] <path>
>>>>
>>>> [B] client was added
>>>> # installadm_6320 create-client -e <mac_address> -n 
>>>> _install_service_46501 -t <img_6320_path>
>>>>
>>>
>>
>

-------------- next part --------------
An HTML attachment was scrubbed...
URL: 
<http://mail.opensolaris.org/pipermail/caiman-discuss/attachments/20090309/f763fee7/attachment.html>

Reply via email to