Peter Amstutz [Wed, 17 Sep 2014 19:00:02 +0000 (15:00 -0400)]
3605: Test queue_size method and queue_position field. Adjust "GET queue"
tests for jobs controller to test that users don't see queue items for which
they do not have permissions.
Peter Amstutz [Tue, 16 Sep 2014 18:49:38 +0000 (14:49 -0400)]
3878: Fix block cache sharing across threads so arv-mount uses a bounded amount
of memory to store block. Also fixes bug in cache management code and cleans
some exception handler error reporting.
Tim Pierce [Tue, 16 Sep 2014 06:15:13 +0000 (02:15 -0400)]
3705: update for code review
* Changed the type of the NextItem channel from *list.Element to
interface{} (i.e. a list.Element.Value)
* Better comments
* Cleaner testing framework
* TestBlockWorkListReaderBlocks to exercise the case where readers block
when the list is exhausted, and resume when new data is supplied.
Tim Pierce [Fri, 12 Sep 2014 19:18:15 +0000 (15:18 -0400)]
Bug fix: manifests with extra spaces
Extend the regular expression to match manifest_text to permit more than
a single space in manifest entries (seen in e.g. 91534558193f42a2f7f8aca872e5a78d+15723)
Peter Amstutz [Fri, 12 Sep 2014 14:25:55 +0000 (10:25 -0400)]
3605: Provide "info" field to all requesters. Filters out any keys with text
"secret" to non-admin users. Also fix fiddlesticks on workbench viewing
details for node.
3654: move the checkbox to the left of the row in collection show page. also, fixed a bug where the newly added selection dropdown shows up in the collection file chooser popup.
Brett Smith [Thu, 11 Sep 2014 15:21:36 +0000 (11:21 -0400)]
Clean up manifest whitespace in split-fastq.
The previous code was generating two spaces between the stream name
and block list, because it had the space from as_manifest() as well as
its own join. This yielded an invalid manifest.
Brett Smith [Wed, 10 Sep 2014 21:00:21 +0000 (17:00 -0400)]
Prevent PySDK CollectionReader from sending UUIDs to Keep.
No issue #. I tickled this while I was working on #3147. Ward saw
the apparent symptom come up in a Job log, so I'm pushing the fix at
his request. I have a test prepared in my branch, along with a bunch
of test infrastructure.
Brett Smith [Wed, 10 Sep 2014 18:22:01 +0000 (14:22 -0400)]
3846: Improve timeout handling in PySDK KeepClient.
* Catch socket errors (including timeouts) and treat them as
transient with regard to retry logic.
* Increase the default timeout to 5 minutes. Given how long it can
take to PUT 64MiB to a proxy and wait for two servers to return
success, this seems like a reasonable default. Future improvements
could set different timeouts based on the request type and whether
or not we're talking to a proxy.
Brett Smith [Wed, 10 Sep 2014 16:39:58 +0000 (12:39 -0400)]
3842: Keep::Manifest concatenates file information from manifest.
The previous implementation failed to consider the possibility that
file information would be spread across multiple lines of a manifest.
This would cause, e.g., the same file to be yielded many times from
each_file.
This requirement makes it impossible to return file size information
without parsing the entire manifest. Because of that, I have reworked
the Ruby SDK API so that method names are more consistent with their
performance characteristics. I have also added some methods to do
some basic file existence checking that do not require parsing the
whole manifest.
3654: display show icon for files only when the file suffix is one of txt, gif etc. Also, fixed a bug in summary html where the collection show was failing when finished_at is not available.
Peter Amstutz [Tue, 9 Sep 2014 15:53:48 +0000 (11:53 -0400)]
3453: Rename check_project_exists to desired_project_uuid. Now raises and
catches distinct apiclient.errors.Error, ValueError errors for project not
found or invalid uuid.
Peter Amstutz [Mon, 8 Sep 2014 20:54:49 +0000 (16:54 -0400)]
3453: Refactored arv-put to remove support for name links, correctly use
ensure_name_unique to prevent name collisions. arv-keepdocker should now
correctly handle cases where the user provides a image hash instead of
repository/tag. Fixed tests.
Peter Amstutz [Mon, 8 Sep 2014 14:53:32 +0000 (10:53 -0400)]
Added create#ensure_unique_name to discovery document. "Add a subproject"
button now uses "ensure_unique_name" to avoid errors when the user creates more
than one project called "New project". refs #3822
Peter Amstutz [Fri, 5 Sep 2014 20:23:38 +0000 (16:23 -0400)]
3822: Added 'ensure_unique_name' option to #create method for API server to
choose a unique name when there is a name collision in the database.
arv-run-pipeline-instance checks to see if there is an output file with the
same name and contents, and uses 'ensure_unique_name' when creating collection.