X-Git-Url: https://git.arvados.org/arvados.git/blobdiff_plain/cb4efac6793d18892dde09c631895cb98c3df470..bc882be0f75601397fedb7ad16d3540df015256f:/services/api/app/controllers/arvados/v1/containers_controller.rb diff --git a/services/api/app/controllers/arvados/v1/containers_controller.rb b/services/api/app/controllers/arvados/v1/containers_controller.rb index fc5614d944..b7dc030229 100644 --- a/services/api/app/controllers/arvados/v1/containers_controller.rb +++ b/services/api/app/controllers/arvados/v1/containers_controller.rb @@ -28,19 +28,17 @@ class Arvados::V1::ContainersController < ApplicationController show end - def update - @object.with_lock do - @object.reload - super - end - end - def find_objects_for_index super if action_name == 'lock' || action_name == 'unlock' # Avoid loading more fields than we need - @objects = @objects.select(:id, :uuid, :state, :priority, :auth_uuid, :locked_by_uuid) + @objects = @objects.select(:id, :uuid, :state, :priority, :auth_uuid, :locked_by_uuid, :lock_count) @select = %w(uuid state priority auth_uuid locked_by_uuid) + elsif action_name == 'update_priority' + # We're going to reload(lock: true) in the handler, which will + # select all attributes, but will fail if we don't select :id + # now. + @objects = @objects.select(:id, :uuid) end end @@ -54,6 +52,11 @@ class Arvados::V1::ContainersController < ApplicationController show end + def update_priority + @object.update_priority! + show + end + def current if Thread.current[:api_client_authorization].nil? send_error("Not logged in", status: 401)