Commit Graph

12 Commits

Author SHA1 Message Date
saadali
88d495026d Allow mounts to run in parallel for non-attachable
Allow mount volume operations to run in parallel for non-attachable
volume plugins.

Allow unmount volume operations to run in parallel for all volume
plugins.
2016-07-19 21:54:26 -07:00
saadali
0dd17fff22 Reorganize volume controllers and manager 2016-07-01 18:50:25 -07:00
k8s-merge-robot
5b3b655710 Merge pull request #28153 from jsafrane/flaky-goroutinemap-wait
Automatic merge from submit-queue

Fixed goroutinemap race on Wait()

sync.WaitGroup produces data races when a GoroutineMap is empty and Wait() and Run() are called at the same time.

From sync.WaitGroup:

>  Note that calls with a positive delta that occur when the counter is zero must happen before a Wait.

Fixes #28128
Note that this issue affects only PersistentVolume unit tests.

@saad-ali, PTAL
2016-06-29 19:54:05 -07:00
David McMahon
ef0c9f0c5b Remove "All rights reserved" from all the headers. 2016-06-29 17:47:36 -07:00
Jan Safranek
06082b1bdf Fixed goroutinemap race on Wait()
sync.WaitGroup produces data races when a GoroutineMap is empty and Wait() and
Run() are called at the same time.

From sync.WaitGroup:
   Note that calls with a positive delta that occur when the counter is zero
   must happen before a Wait.

Fixes #28128
2016-06-28 12:04:45 +02:00
saadali
e716ddc771 Controller wait for attach and exponential backoff
Modify attach/detach controller to keep track of volumes to report
attached in Node VolumeToAttach status.

Modify kubelet volume manager to wait for volume to show up in Node
VolumeToAttach status.

Implement exponential backoff for errors in volume manager and attach
detach controller
2016-06-20 18:19:55 -07:00
k8s-merge-robot
4d430ba09c Merge pull request #25400 from jsafrane/devel/operation-error
Automatic merge from submit-queue

Add specific error type for "operation already exists" error.

PersistentVolume controller needs to know why scheduling a new operation has failed - if the operation was already running or some other error happened.
2016-06-09 03:28:16 -07:00
Jan Safranek
55f9148331 Increase goroutinemap unit test timeouts.
50ms is flaky in Jenkins.

Fixes #25825
2016-05-20 10:14:47 +02:00
Jan Safranek
e5bea6abba Add specific error type for "operation already exists" error.
PersistentVolume controller needs to know why scheduling a new operation has
failed - if the operation was already running or some other error happened.
2016-05-16 10:43:42 +02:00
saadali
f7196337c7 Rename NewGoRoutine to Run in GoRoutineMap 2016-05-13 16:05:55 -07:00
Jan Safranek
6623385d64 Add GoRoutineMap.Wait method.
It's useful for testing - code under tests creates an operation and my test
needs to wait until the operation finishes before evaluating results.
2016-05-10 10:11:08 +02:00
saadali
53bb527e35 Introduce a data structure for managing go routines by unique name. 2016-05-02 12:02:34 -07:00