10865: Fix query for empty jobs table
authorPeter Amstutz <pamstutz@veritasgenetics.com>
Wed, 19 Sep 2018 19:15:11 +0000 (15:15 -0400)
committerPeter Amstutz <pamstutz@veritasgenetics.com>
Wed, 19 Sep 2018 19:15:51 +0000 (15:15 -0400)
Arvados-DCO-1.1-Signed-off-by: Peter Amstutz <pamstutz@veritasgenetics.com>

services/api/config/initializers/legacy_jobs_api.rb

index 00605725e8e16eebdfc21f6836a45d62cc6a7346..eecf337daaff7ff75e604f85f3abda828fcc0167 100644 (file)
@@ -8,9 +8,11 @@
 require_relative 'load_config.rb'
 
 Server::Application.configure do
+  # Use exec_query because the Job model isn't loaded yet
+  # it returns the string '0', not converted to integer.
   if Rails.configuration.enable_legacy_jobs_api == false ||
      (Rails.configuration.enable_legacy_jobs_api == "auto" &&
-      ActiveRecord::Base.connection.exec_query("select count(*) from jobs")[0] == 0)
+      ActiveRecord::Base.connection.exec_query('select count(*) from jobs').first['count'] == '0')
     Rails.configuration.disable_api_methods = ["jobs.create",
                                                "pipeline_instances.create",
                                                "pipeline_templates.create",