Project

General

Profile

Actions

Feature #17349

closed

[Keep API] Revisit "replicas_desired" and "storage_classes_desired".

Added by Nico César about 3 years ago. Updated about 3 years ago.

Status:
Rejected
Priority:
Normal
Assigned To:
-
Category:
-
Target version:
Story points:
-

Description

This specification is for the server side (client side of this will be on separate tickets,).

Make sure that endpoint /arvados/v1/collections has all desired functionality, tests and documentation for controller and railsapi

This ticket will cover (api)

  • railsapi (including storing in the database)
  • controller
  • documentation updates the current behaviour
  • test

This ticket will not cover

  • client behaviour
  • keep-balance behavirour

Acording to the documentation the current behaviour for collections' "replicas_desired" is to accept a Number1 or 'null'. Also there is an undocumented attribute "storage_classes_desired" and "storage_classes_confirmed".

"MyStorageClass" is an example name that has to match with the StorageClass configuration setting on the volume but has no particular meaning for Arvados.

Valid values:

replicas_desired storage_classes_desired defaultCollectionReplication Collection Effective Value Notes
null (or omited from the request) null 3 {"default": 3}
null (or omited from the request) null 2 {"default": 2} current behaviour see [2]
42 null 2 {"default": 42}
34 null 2 {"default": 34}
1 ["MyStorageClass"] 2 {"default": 0, "MyStorageClass": 1}
1 ["default","MyStorageClass"] 2 {"default": 1, "MyStorageClass": 1}
null ["default","MyStorageClass"] 2 {"default": 2, "MyStorageClass": 2}

The "Effective value" is the amount of copies stored in each storage class, this column will help to clarify cases in following tickets

To be talked in next grooming session:
  • For the error send the user an error, we only will discuss the API errors. arv-put, arvados-cwl-runner and other clients will have their own ticket
  • How will backward compatibility works here?

[1] https://doc.arvados.org/v2.1/api/methods/collections.html
[2] https://doc.arvados.org/v2.0/sdk/python/arvados/arvados.collection-pysrc.html#Collection._my_block_manager


Related issues

Related to Arvados Epics - Idea #16107: Storage classesResolved03/01/202109/30/2021Actions
Blocks Arvados - Feature #17350: [keep-balance] Expected behaviour with different "replicas_desired" and "storage_classes_desired" valuesRejectedActions
Blocks Arvados - Feature #17388: [arv-copy] Storage classes revisitResolvedLucas Di Pentima07/23/2021Actions
Blocks Arvados - Feature #17389: Storage classes support in keepproxyResolvedLucas Di Pentima06/18/2021Actions
Blocks Arvados - Bug #17390: Set storage classes for intermediates and final outputsResolvedPeter Amstutz08/12/2021Actions
Actions #1

Updated by Nico César about 3 years ago

Actions #2

Updated by Nico César about 3 years ago

  • Project changed from Arvados Epics to Arvados
Actions #3

Updated by Nico César about 3 years ago

  • Description updated (diff)
  • Subject changed from Allow "replicas_desired" to accept multiple values to [Keep API] Allow "replicas_desired" to accept multiple values
Actions #4

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #5

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #6

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #7

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #8

Updated by Nico César about 3 years ago

  • Blocks Feature #17350: [keep-balance] Expected behaviour with different "replicas_desired" and "storage_classes_desired" values added
Actions #9

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #10

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #11

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #12

Updated by Nico César about 3 years ago

  • Description updated (diff)
Actions #13

Updated by Nico César about 3 years ago

  • Description updated (diff)
  • Subject changed from [Keep API] Allow "replicas_desired" to accept multiple values to [Keep API] Revisit "replicas_desired" and "storage_classes_desired".
Actions #14

Updated by Nico César about 3 years ago

Actions #15

Updated by Nico César about 3 years ago

Actions #16

Updated by Nico César about 3 years ago

  • Blocks Bug #17390: Set storage classes for intermediates and final outputs added
Actions #17

Updated by Peter Amstutz about 3 years ago

  • Description updated (diff)
Actions #18

Updated by Peter Amstutz about 3 years ago

  • Description updated (diff)
Actions #19

Updated by Peter Amstutz about 3 years ago

  • Status changed from New to Rejected
Actions

Also available in: Atom PDF