# Presentation: 688333

## SSS Build & Configuration Management Group Update 05/04

- Narayan Desai
- desai@mcs.anll.gov

## Overview

- Library improvements
- Infrastructure improvements
- BCM Component usage experience
- Restriction syntax

## Library Improvements

- Bugfixes
- Testing of Java support?
- Bugfixes
- SSL protocol testing and improvements

## Infrastructure Improvements

- Python library improvements
- Event Manager bugfixes

## BCM Component Usage Experience

- Node state manager
- sufficient for our scheduler
- Diagnostics unwieldy
- Build System
- Usable for testbed jobs
- Hardware Infrastructure
- Still seeking purpose

## Restriction Syntax Examples

- Dataset:
- <node-states>
-    <node-state node='ccn1' state='up' adminstate='online'/>
-    <node-state node='ccn2' state='down' adminstate='offline'/>
-    <node-state node='ccn3' state='up' adminstate='online'/>
-    <node-state node='ccn4' state='up' adminstate='online'/>
-    <node-state node='ccn5' state='down' adminstate='offline'/>
-    <node-state node='ccn6' state='up' adminstate='offline'/>
-    <node-state node='ccn7' state='up' adminstate='online'/>
-    <node-state node='ccn8' state='up' adminstate='online'/>
- </node-states>

## Restriction Syntax Examples (cont)

- Query:
- <get-node-state>
-    <node-state node='*' adminstate='online'/>
- </get-node-state>
- Response:
- <node-states>
-    <node-state node='ccn1' state='up' adminstate='online'/>
-    <node-state node='ccn3' state='up' adminstate='online'/>
-    <node-state node='ccn4' state='up' adminstate='online'/>
-    <node-state node='ccn7' state='up' adminstate='online'/>
-    <node-state node='ccn8' state='up' adminstate='online'/>
- </node-states>

## Restriction Syntax Examples (cont)

- Query:
- <get-node-state>
-    <node-state node='*' adminstate='online'/>
-    <node-state node='*' state='down'/>
- </get-node-state>
- Response:
- <node-states>
-    <node-state node='ccn1' adminstate='online'/>
-    <node-state node='ccn2' state='down'/>
-    <node-state node='ccn3' adminstate='online'/>
-    <node-state node='ccn4' adminstate='online'/>
-    <node-state node='ccn5' state='down'/>
-    <node-state node='ccn7' adminstate='online'/>
-    <node-state node='ccn8' adminstate='online'/>
- </node-states>

## Restriction Syntax Examples (cont)

- Data set:
- <process-groups>
-    <process-group pgid='192' submitter='desai' totalprocs='2'
-                          output='merged' state='started'>
-        <process-spec exec='cpi' cwd='/home/desai/stest'
-                             path=''/usr/bin:/usr/local/bin''/>
-        <process host='ccn1' pid='5347' session='5348'>
-        <process host='ccn2' pid='5227' session='5228'>
-    </process-group>
-    <process-group pgid='197' submitter='lusk' totalprocs='4'
-                          output='merged' state='finished'>
-        <process-spec exec='mpifract' cwd='/home/desai/stest'
-                             path=''/usr/bin:/usr/local/bin''/>
-        <process host='ccn3' pid='5347' session='5348'>
-        <process host='ccn4' pid='5227' session='5228'>
-        <process host='ccn5' pid='4434' session='4448'>
-        <process host='ccn6' pid='227' session='228'>
-        <output/>
-        <error/>
-    </process-group>
-    <process-group pgid='207' submitter='desai' totalprocs='2'
-                          output='merged' state='running'>
-        <process-spec exec='cpi' cwd='/home/desai/stest'
-                             path=''/usr/bin:/usr/local/bin''/>
-        <process host='ccn7' pid='5347' session='5348'>
-        <process host='ccn8' pid='5227' session='5228'>
-    </process-group>
-    <process-group pgid='212' submitter='desai' totalprocs='2'
-                          output='merged' state='running'>
-        <process-spec exec='mpish' cwd='/home/desai/stest'
-                             path=''/usr/bin:/usr/local/bin''/>
-        <process host='ccn7' pid='2147' session='5348'>
-        <process host='ccn8' pid='53427' session='5228'>
-    </process-group>
- </process-groups>

## Restriction Syntax Examples (cont)

- Query:
- <signal-process-group signal='SIGKILL'>
-    <process-group pgid='*'>
-       <process host='ccn7'/>
-    </process-group>
- </signal-process-group>
- Response:
- <process-groups>
-    <process-group pgid='207'>
-       <process host='ccn7'/>
-    </process-group>
-    <process-group pgid='212'>
-       <process host='ccn7'/>
-    </process-group>
- </process-group>

## Restriction Syntax Examples (cont)

- Query:
- <get-process-group>
-    <process-group pgid='<:195' submitter='!d=:desai' match='complex'/>
- </get-process-group>
- Response:
- <process-groups>
-    <process-group pgid='197'/>
-    <process-group pgid='207'/>
-    <process-group pgid='212'/>
- </process-group>

## Uniqueness

- Can be implemented with argument
- Must be explicit