Arvados 2.7.2 released

The Arvados team is pleased to announce Arvados 2.7.2. This release includes a variety of improvements related to user interface, scalability, performance, and security. We recommend that new and existing installations of 2.7.1 or earlier upgrade to 2.7.2. See Upgrading Arvados for instructions.

Major improvements

Workbench

Workbench features a new “instance types” page describing the compute instance types that the cluster is configured to use. #19675

Arvados Workbench screenshot of the panel listing the instance types available for compute.

A toolbar is now displayed when a single item in a list is selected, in addition to the existing multi-select. #21128, #21315, #21317 Context menus and toolbars have been reordered and regrouped to be easier to read and more consistent across the application. #21448

Arvados Workbench screenshot of the toolbar that is displayed when an item is selected.

The registered workflow page now has a panel listing runs of that workflow. #21158

Arvados Workbench screenshot showing a workflow with its Run History panel

The progress bar tooltip now displays all counts independently of which process status the mouse is hovering over. #21441

Arvados Workbench screenshot showing workflow process progress. The tooltip counts the state of all subprocesses in the workflow.

Keep

arv-mount now features a --filters option to filter what collections or projects should appear in directory listings. Documentation on how to use this option can be found in the Arvados user guide. #21452

Virtual projects (called “filter groups” in the API) can now be browsed via the keep-web WebDAV and S3 APIs when nested in a regular project. #21214

Crunch

The LSF dispatcher now supports %W substitution (container max_run_time + configured overhead, in minutes, rounded up). See Upgrading Arvados for details about new configuration options MaxRunTimeDefault and MaxRunTimeOverhead. #21449

Other improvements and bug fixes

Workbench

The “breadcrumbs” navigation bar now correctly displays the name of the user and project contents when navigating the user’s project. #21200, #21412

The left panel no longer goes into a collapsed state when the browser window is narrow and right panel is opened. #21316

The Outputs panel now displays out parameters properly for processes that do not have cwl.output.json in the output collection. #21366

The global search no longer searches container requests by default. They can still be searched by selecting them in the “type” filter. #21370

The panels of the workflow view have been reorganized and made bigger. #21440

Choosing “Create project” action in a context menu now correctly creates the project inside the current project instead of in the user’s Home. #21359

Users can now launch workflows that do not appear in the first 100 items of the “workflows” listing, instead of getting an error “Can’t run workflow”. #21288

When loading a specific project in Workbench, it will now display a “loading” status instead of a “not found” status while the project contents are loading. #21386

Paging on “Group members” and “Group permissions” tables now works correctly. In the listing of all groups, the count of group members is now correct. #21249, #21221

The process log viewer will no longer show show multiple scrollbars when line wrapping is disabled. #21461

Lengthy values for “Owner” in the Collections view now wrap instead of overlapping other fields. #21507

All places where Workbench opens a link in a new tab now specify rel="noopener" to disassociate the new tab from the origin tab. #20455

The left side tree now displays the up-to-date name of items marked as “favorites”. #21357

The “Inputs” and “Outputs” panels of the process view are now more performant when displaying workflows thousands of input or output parameters. #21508

API Server Improvements

The API server no longer sends out multiple duplicate “welcome” emails. In addition, the API server will no longer send out “account created” admin emails with an empty email addresses for the new account. #21059

Certain API operations involving collections with a very large number of past versions will no longer take an excessive amount of time (sometimes resulting in a request timeout). #21290

The API server now has a separate limit MaxGatewayTunnels for “gateway tunnel” connections (long-lived connections made by running compute containers back to the API server) instead of counting them against MaxConcurrentRequests. #21285

The API server will no longer update federated user accounts in the local database when none of the fields have changed. #21304

Configuration options related to sending out notification emails are now better documented. #21416

Keep

Basic read operations through arv-mount now offer significantly better throughput, particularly when the data block is already in the memory-mapped disk cache. #21639

Processes accessing arv-mount will no longer receive occasional erroneous I/O errors or File not Found errors when multiple processes access different parts of the mounted file system at the same time. arv-mount’s memory consumption over time has been improved. #21541

arv-mount will no longer crash intermittently when multiple processes access a mount at the same time. #21568

keep-balance now publishes a number of additional Prometheus metrics (#21036):

  • unachievable
  • optimally balanced
  • desired
  • total apparent size of all collections
  • total size of unique referenced blocks
  • block references in all collections
  • blocks referenced by any collection
  • total entries sent in pull lists
  • total entries deferred (not sent) in pull lists
  • total entries sent in trash lists
  • total entries deferred (not sent) in trash lists
  • blocks with indicated number of replicas at last count
  • stored in indicated storage class

Crunch

Compute instances running on AWS are now required to use IMDSv2. This updates the Arvados fork of amazon-ebs-autoscale. #21552

The cloud dispatcher now recognizes additional errors from AWS as “subnet specific” when triggering the behavior to try a different subnet. #21603

The ensure-encrypted-partitions script used on cloud compute instances only restarts the Docker daemon if it was already running when the script started. #21429

SDKs and Command Line Tools

arv-keepdocker and arvados-cwl-runner are now compatible with container image tarballs produced by Docker version 25. #21417

The arv-user-activity script correctly reports data accesses of federated collections instead of crashing. #21379

The field on CWL OutOfMemoryRetry is now correctly spelled “memoryRetryMultiplier”. The previous typoed field name “memoryRetryMultipler” is still recognized for backwards compatability. #21216

The Arvados Ruby SDK 2.7.x has been explicitly marked as incompatible with Ruby 3. Support for Ruby 3 is planned for the next major release. #21301

The Python SDK now permits directly importing the arvados.api module. #21283

The Java SDK now has methods to use the “replace_files” API. GitHub PR #224

The Java SDK now supports specifying a byte range to download from keep-web, and resuming interrupted downloads. GitHub PR #223

The Java SDK client now exposes configuration settings for connectTimeout, readTimeout, and writeTimeout. The default for all values is 60000 (1 minute), which matches the hardcoded value used !in previous versions. #21219, GitHub PR #220

The Java SDK now supports uploading data to keep-web from a java.io.InputStream. #21277, GitHub PR #221

Security

Arvados components using the golang.org/x/crypto package are now built with v0.17.0 to mitigate CVE-2023-48795. #21309