[ARVADOS] updated: 0315f11bafce076830fdde121c2567020b5be241

Git user git at public.curoverse.com
Wed May 25 10:29:53 EDT 2016


Summary of changes:
 build/run-build-packages.sh                   |   4 +-
 crunch_scripts/cwl-runner                     |  16 ++-
 sdk/cwl/arvados_cwl/__init__.py               | 124 ++++++++++++++---------
 sdk/cwl/setup.py                              |   2 +-
 sdk/cwl/tests/test_job.py                     |  11 ++-
 sdk/cwl/tests/test_submit.py                  |  12 +--
 sdk/cwl/tests/tool/submit_tool.cwl            |   1 +
 sdk/cwl/tests/wf/inputs_test.cwl              |   1 +
 sdk/cwl/tests/wf/submit_wf.cwl                |   1 +
 sdk/go/dispatch/dispatch.go                   |  16 ++-
 services/datamanager/collection/collection.go |  14 +--
 services/keepstore/azure_blob_volume.go       | 137 +++++++++++++++++++++++---
 services/keepstore/azure_blob_volume_test.go  |  33 ++++++-
 services/keepstore/s3_volume.go               |   4 +-
 services/keepstore/volume_generic_test.go     |  62 +++++++++++-
 services/keepstore/volume_unix.go             |   4 +-
 16 files changed, 352 insertions(+), 90 deletions(-)

       via  0315f11bafce076830fdde121c2567020b5be241 (commit)
       via  b3ea09708bc16ae8b24d49532383b3600631c9ff (commit)
       via  d3bd05e221e5b7bf516bb1043bee96ab363c0af8 (commit)
       via  fedd51d0c04895951920d75147e3640f706653f6 (commit)
       via  aa1d6f9c5e1e21ceedf855bdb2f6db9154f26669 (commit)
       via  25be2534e8746475ddc799042fefa08bd0548e9d (commit)
       via  cffa542e4cb069b40764c889613c249e88af62d0 (commit)
       via  7a430017d745cab4458aa03f620e7925a50b7d06 (commit)
       via  08cc91f0493dd8dfe27046faf02c2c907e50443e (commit)
       via  3c8c81609c8e9b3b422477002e8a348aabafb3b9 (commit)
       via  ece22330313613cf4ce8f2b0bd6db4f00bdd08fc (commit)
       via  e0fac5213f40fc00946f8ec5e4df42bebdf756d2 (commit)
       via  5011827dbbe6b17606bf83338b99dd53789ae9cc (commit)
       via  0bce01f575822851da09f252b38d7009ed7a5ab0 (commit)
       via  df8d0badeb97036564a80e89569c8e62ede22163 (commit)
       via  1cde74c26fd6a7793a7bb1a9bd748ce06e37c455 (commit)
       via  53deed9cb00b94a69a3be1f959cbfda342646718 (commit)
       via  c8d9a898cde654b53200bda0b0ef8b406dd71739 (commit)
      from  11d484489c21487074ecb6d15b086c02b13e326f (commit)

Those revisions listed above that are new to this repository have
not appeared on any other notification email; so we list those
revisions in full, below.


commit 0315f11bafce076830fdde121c2567020b5be241
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date:   Wed May 25 10:29:49 2016 -0400

    9187: Add comments to dispatch.go

diff --git a/sdk/go/dispatch/dispatch.go b/sdk/go/dispatch/dispatch.go
index 9ce7bf8..9491f96 100644
--- a/sdk/go/dispatch/dispatch.go
+++ b/sdk/go/dispatch/dispatch.go
@@ -10,6 +10,7 @@ import (
 	"time"
 )
 
+// Constants for container states
 const (
 	Queued    = "Queued"
 	Locked    = "Locked"
@@ -41,6 +42,7 @@ type ContainerList struct {
 	Items []Container `json:"items"`
 }
 
+// DispatcherState holds the state of the dispatcher framework
 type DispatcherState struct {
 	mineMutex        sync.Mutex
 	mineMap          map[string]chan Container
@@ -121,7 +123,7 @@ func (dispatcher *DispatcherState) pollContainers() {
 			dispatcher.getContainers(paramsP, touched)
 			dispatcher.mineMutex.Lock()
 			var monitored []string
-			for k, _ := range dispatcher.mineMap {
+			for k := range dispatcher.mineMap {
 				if _, ok := touched[k]; !ok {
 					monitored = append(monitored, k)
 				}
@@ -177,6 +179,7 @@ func (dispatcher *DispatcherState) handleContainers() {
 	}
 }
 
+// UpdateState makes an API call to change the state of a container.
 func (dispatcher *DispatcherState) UpdateState(uuid, newState string) error {
 	err := dispatcher.Arv.Update("containers", uuid,
 		arvadosclient.Dict{
@@ -188,6 +191,9 @@ func (dispatcher *DispatcherState) UpdateState(uuid, newState string) error {
 	return err
 }
 
+// RunDispatcher runs the main loop of the dispatcher until receiving a message
+// on the dispatcher.DoneProcessing channel.  It also installs a signal handler
+// to terminate gracefully on SIGINT, SIGTERM or SIGQUIT.
 func (dispatcher *DispatcherState) RunDispatcher() {
 	// Graceful shutdown on signal
 	sigChan := make(chan os.Signal)
@@ -207,6 +213,14 @@ func (dispatcher *DispatcherState) RunDispatcher() {
 	dispatcher.handleContainers()
 }
 
+// MakeDispatcher creates a new dispatcher framework struct.  When a new queued
+// containers appears and is successfully locked, the dispatcher will call
+// runContainer() followed by monitorContainer().  If a container appears that
+// is Locked or Running but not known to the dispatcher, it will only call
+// monitorContainer().  The monitorContainer() callback is passed a channel
+// over which it will receive updates to the container state.  The callback is
+// responsible for draining the channel, if it fails to do so it will deadlock
+// the dispatcher.
 func MakeDispatcher(arv arvadosclient.ArvadosClient,
 	pollInterval time.Duration,
 	runContainer func(*DispatcherState, Container),

commit b3ea09708bc16ae8b24d49532383b3600631c9ff
Merge: 11d4844 d3bd05e
Author: Peter Amstutz <peter.amstutz at curoverse.com>
Date:   Wed May 25 09:30:24 2016 -0400

    Merge branch 'master' into 9187-crunchv2-dispatching


-----------------------------------------------------------------------


hooks/post-receive
-- 




More information about the arvados-commits mailing list