21126: Merge branch 'main' into 21126-trash-when-ro
authorTom Clegg <tom@curii.com>
Mon, 30 Oct 2023 16:12:55 +0000 (12:12 -0400)
committerTom Clegg <tom@curii.com>
Mon, 30 Oct 2023 16:12:55 +0000 (12:12 -0400)
Arvados-DCO-1.1-Signed-off-by: Tom Clegg <tom@curii.com>

1  2 
lib/config/config.default.yml
sdk/go/arvados/config.go

index 593abad8541770b91a3ac3f0eb8fcbde1a7de877,abffc1c0b801a1683462bd29419a5b200ce75d39..a475f2fe68994b28b12aa3151cb9f3ccb60e5a61
@@@ -225,7 -225,17 +225,17 @@@ Clusters
  
        # Maximum number of concurrent requests to process concurrently
        # in a single service process, or 0 for no limit.
-       MaxConcurrentRequests: 8
+       #
+       # Note this applies to all Arvados services (controller, webdav,
+       # websockets, etc.). Concurrency in the controller service is
+       # also effectively limited by MaxConcurrentRailsRequests (see
+       # below) because most controller requests proxy through to the
+       # RailsAPI service.
+       MaxConcurrentRequests: 64
+       # Maximum number of concurrent requests to process concurrently
+       # in a single RailsAPI service process, or 0 for no limit.
+       MaxConcurrentRailsRequests: 8
  
        # Maximum number of incoming requests to hold in a priority
        # queue waiting for one of the MaxConcurrentRequests slots to be
              ReadOnly: false
            "http://host1.example:25107": {}
          ReadOnly: false
 +        AllowTrashWhenReadOnly: false
          Replication: 1
          StorageClasses:
            # If you have configured storage classes (see StorageClasses
diff --combined sdk/go/arvados/config.go
index 5db0222e27f4e08242354f2b93a05aeb65f87757,6e6c5298e46f0f5c61b5a978b312aaa49c70c62e..27f1ab773dd586faa03bf4b7d1c69e3c330b84ac
@@@ -99,6 -99,7 +99,7 @@@ type Cluster struct 
                DisabledAPIs                     StringSet
                MaxIndexDatabaseRead             int
                MaxItemsPerResponse              int
+               MaxConcurrentRailsRequests       int
                MaxConcurrentRequests            int
                MaxQueuedRequests                int
                MaxQueueTimeForLockRequests      Duration
@@@ -316,13 -317,12 +317,13 @@@ type StorageClassConfig struct 
  }
  
  type Volume struct {
 -      AccessViaHosts   map[URL]VolumeAccess
 -      ReadOnly         bool
 -      Replication      int
 -      StorageClasses   map[string]bool
 -      Driver           string
 -      DriverParameters json.RawMessage
 +      AccessViaHosts         map[URL]VolumeAccess
 +      ReadOnly               bool
 +      AllowTrashWhenReadOnly bool
 +      Replication            int
 +      StorageClasses         map[string]bool
 +      Driver                 string
 +      DriverParameters       json.RawMessage
  }
  
  type S3VolumeDriverParameters struct {