lab_tech 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (65) hide show
  1. checksums.yaml +7 -0
  2. data/MIT-LICENSE +20 -0
  3. data/README.md +323 -0
  4. data/Rakefile +30 -0
  5. data/app/models/lab_tech/application_record.rb +5 -0
  6. data/app/models/lab_tech/default_cleaner.rb +87 -0
  7. data/app/models/lab_tech/experiment.rb +190 -0
  8. data/app/models/lab_tech/observation.rb +40 -0
  9. data/app/models/lab_tech/percentile.rb +41 -0
  10. data/app/models/lab_tech/result.rb +130 -0
  11. data/app/models/lab_tech/speedup.rb +65 -0
  12. data/app/models/lab_tech/summary.rb +183 -0
  13. data/config/routes.rb +2 -0
  14. data/db/migrate/20190815192130_create_experiment_tables.rb +50 -0
  15. data/lib/lab_tech.rb +176 -0
  16. data/lib/lab_tech/engine.rb +6 -0
  17. data/lib/lab_tech/version.rb +3 -0
  18. data/lib/tasks/lab_tech_tasks.rake +4 -0
  19. data/spec/dummy/Rakefile +6 -0
  20. data/spec/dummy/app/assets/config/manifest.js +1 -0
  21. data/spec/dummy/app/assets/javascripts/application.js +14 -0
  22. data/spec/dummy/app/assets/stylesheets/application.css +15 -0
  23. data/spec/dummy/app/controllers/application_controller.rb +2 -0
  24. data/spec/dummy/app/jobs/application_job.rb +2 -0
  25. data/spec/dummy/app/models/application_record.rb +3 -0
  26. data/spec/dummy/bin/bundle +3 -0
  27. data/spec/dummy/bin/rails +4 -0
  28. data/spec/dummy/bin/rake +4 -0
  29. data/spec/dummy/bin/setup +33 -0
  30. data/spec/dummy/bin/update +28 -0
  31. data/spec/dummy/config.ru +5 -0
  32. data/spec/dummy/config/application.rb +35 -0
  33. data/spec/dummy/config/boot.rb +5 -0
  34. data/spec/dummy/config/database.yml +25 -0
  35. data/spec/dummy/config/environment.rb +5 -0
  36. data/spec/dummy/config/environments/development.rb +46 -0
  37. data/spec/dummy/config/environments/production.rb +71 -0
  38. data/spec/dummy/config/environments/test.rb +36 -0
  39. data/spec/dummy/config/initializers/application_controller_renderer.rb +8 -0
  40. data/spec/dummy/config/initializers/backtrace_silencers.rb +7 -0
  41. data/spec/dummy/config/initializers/cors.rb +16 -0
  42. data/spec/dummy/config/initializers/filter_parameter_logging.rb +4 -0
  43. data/spec/dummy/config/initializers/inflections.rb +16 -0
  44. data/spec/dummy/config/initializers/mime_types.rb +4 -0
  45. data/spec/dummy/config/initializers/wrap_parameters.rb +14 -0
  46. data/spec/dummy/config/locales/en.yml +33 -0
  47. data/spec/dummy/config/puma.rb +34 -0
  48. data/spec/dummy/config/routes.rb +3 -0
  49. data/spec/dummy/config/spring.rb +6 -0
  50. data/spec/dummy/db/schema.rb +52 -0
  51. data/spec/dummy/db/test.sqlite3 +0 -0
  52. data/spec/dummy/log/development.log +0 -0
  53. data/spec/dummy/log/test.log +1519 -0
  54. data/spec/examples.txt +79 -0
  55. data/spec/models/lab_tech/default_cleaner_spec.rb +32 -0
  56. data/spec/models/lab_tech/experiment_spec.rb +110 -0
  57. data/spec/models/lab_tech/percentile_spec.rb +85 -0
  58. data/spec/models/lab_tech/result_spec.rb +198 -0
  59. data/spec/models/lab_tech/speedup_spec.rb +133 -0
  60. data/spec/models/lab_tech/summary_spec.rb +325 -0
  61. data/spec/models/lab_tech_spec.rb +23 -0
  62. data/spec/rails_helper.rb +62 -0
  63. data/spec/spec_helper.rb +98 -0
  64. data/spec/support/misc_helpers.rb +7 -0
  65. metadata +238 -0
@@ -0,0 +1,34 @@
1
+ # Puma can serve each request in a thread from an internal thread pool.
2
+ # The `threads` method setting takes two numbers: a minimum and maximum.
3
+ # Any libraries that use thread pools should be configured to match
4
+ # the maximum value specified for Puma. Default is set to 5 threads for minimum
5
+ # and maximum; this matches the default thread size of Active Record.
6
+ #
7
+ threads_count = ENV.fetch("RAILS_MAX_THREADS") { 5 }
8
+ threads threads_count, threads_count
9
+
10
+ # Specifies the `port` that Puma will listen on to receive requests; default is 3000.
11
+ #
12
+ port ENV.fetch("PORT") { 3000 }
13
+
14
+ # Specifies the `environment` that Puma will run in.
15
+ #
16
+ environment ENV.fetch("RAILS_ENV") { "development" }
17
+
18
+ # Specifies the number of `workers` to boot in clustered mode.
19
+ # Workers are forked webserver processes. If using threads and workers together
20
+ # the concurrency of the application would be max `threads` * `workers`.
21
+ # Workers do not work on JRuby or Windows (both of which do not support
22
+ # processes).
23
+ #
24
+ # workers ENV.fetch("WEB_CONCURRENCY") { 2 }
25
+
26
+ # Use the `preload_app!` method when specifying a `workers` number.
27
+ # This directive tells Puma to first boot the application and load code
28
+ # before forking the application. This takes advantage of Copy On Write
29
+ # process behavior so workers use less memory.
30
+ #
31
+ # preload_app!
32
+
33
+ # Allow puma to be restarted by `rails restart` command.
34
+ plugin :tmp_restart
@@ -0,0 +1,3 @@
1
+ Rails.application.routes.draw do
2
+ mount LabTech::Engine => "/lab_tech"
3
+ end
@@ -0,0 +1,6 @@
1
+ %w[
2
+ .ruby-version
3
+ .rbenv-vars
4
+ tmp/restart.txt
5
+ tmp/caching-dev.txt
6
+ ].each { |path| Spring.watch(path) }
@@ -0,0 +1,52 @@
1
+ # This file is auto-generated from the current state of the database. Instead
2
+ # of editing this file, please use the migrations feature of Active Record to
3
+ # incrementally modify your database, and then regenerate this schema definition.
4
+ #
5
+ # Note that this schema.rb definition is the authoritative source for your
6
+ # database schema. If you need to create the application database on another
7
+ # system, you should be using db:schema:load, not running all the migrations
8
+ # from scratch. The latter is a flawed and unsustainable approach (the more migrations
9
+ # you'll amass, the slower it'll run and the greater likelihood for issues).
10
+ #
11
+ # It's strongly recommended that you check this file into your version control system.
12
+
13
+ ActiveRecord::Schema.define(version: 2019_08_15_192130) do
14
+
15
+ create_table "lab_tech_experiments", force: :cascade do |t|
16
+ t.string "name"
17
+ t.integer "percent_enabled", default: 0, null: false
18
+ t.integer "equivalent_count", default: 0, null: false
19
+ t.integer "timed_out_count", default: 0, null: false
20
+ t.integer "other_error_count", default: 0, null: false
21
+ t.index ["name"], name: "index_lab_tech_experiments_by_name", unique: true
22
+ end
23
+
24
+ create_table "lab_tech_observations", force: :cascade do |t|
25
+ t.integer "result_id", null: false
26
+ t.string "name", limit: 100
27
+ t.float "duration", limit: 24
28
+ t.text "value", limit: 4294967295
29
+ t.text "sql"
30
+ t.string "exception_class"
31
+ t.text "exception_message"
32
+ t.text "exception_backtrace"
33
+ t.datetime "created_at"
34
+ t.index ["result_id"], name: "index_lab_tech_observations_by_result_id"
35
+ end
36
+
37
+ create_table "lab_tech_results", force: :cascade do |t|
38
+ t.integer "experiment_id", null: false
39
+ t.text "context"
40
+ t.boolean "equivalent", default: false, null: false
41
+ t.boolean "raised_error", default: false, null: false
42
+ t.float "time_delta", limit: 24
43
+ t.float "speedup_factor", limit: 24
44
+ t.datetime "created_at"
45
+ t.boolean "timed_out", default: false, null: false
46
+ t.float "control_duration", limit: 24
47
+ t.float "candidate_duration", limit: 24
48
+ t.index ["experiment_id", "equivalent"], name: "index_lab_tech_results_by_exp_id_and_equivalent"
49
+ t.index ["experiment_id", "raised_error"], name: "index_lab_tech_results_by_exp_id_and_raised"
50
+ end
51
+
52
+ end
File without changes
@@ -0,0 +1,1519 @@
1
+  (0.0ms) DROP TABLE IF EXISTS "lab_tech_experiments"
2
+  (0.1ms) SELECT sqlite_version(*)
3
+  (1.6ms) CREATE TABLE "lab_tech_experiments" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "name" varchar, "percent_enabled" integer DEFAULT 0 NOT NULL, "equivalent_count" integer DEFAULT 0 NOT NULL, "timed_out_count" integer DEFAULT 0 NOT NULL, "other_error_count" integer DEFAULT 0 NOT NULL)
4
+  (0.7ms) CREATE UNIQUE INDEX "index_lab_tech_experiments_by_name" ON "lab_tech_experiments" ("name")
5
+  (0.1ms) DROP TABLE IF EXISTS "lab_tech_observations"
6
+  (0.7ms) CREATE TABLE "lab_tech_observations" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "result_id" integer NOT NULL, "name" varchar(100), "duration" float(24), "value" text(4294967295), "sql" text, "exception_class" varchar, "exception_message" text, "exception_backtrace" text, "created_at" datetime)
7
+  (0.8ms) CREATE INDEX "index_lab_tech_observations_by_result_id" ON "lab_tech_observations" ("result_id")
8
+  (0.1ms) DROP TABLE IF EXISTS "lab_tech_results"
9
+  (0.7ms) CREATE TABLE "lab_tech_results" ("id" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "experiment_id" integer NOT NULL, "context" text, "equivalent" boolean DEFAULT 'f' NOT NULL, "raised_error" boolean DEFAULT 'f' NOT NULL, "time_delta" float(24), "speedup_factor" float(24), "created_at" datetime, "timed_out" boolean DEFAULT 'f' NOT NULL, "control_duration" float(24), "candidate_duration" float(24))
10
+  (0.7ms) CREATE INDEX "index_lab_tech_results_by_exp_id_and_equivalent" ON "lab_tech_results" ("experiment_id", "equivalent")
11
+  (0.1ms)  SELECT sql
12
+ FROM sqlite_master
13
+ WHERE name='index_lab_tech_results_by_exp_id_and_equivalent' AND type='index'
14
+ UNION ALL
15
+ SELECT sql
16
+ FROM sqlite_temp_master
17
+ WHERE name='index_lab_tech_results_by_exp_id_and_equivalent' AND type='index'
18
+ 
19
+  (0.9ms) CREATE INDEX "index_lab_tech_results_by_exp_id_and_raised" ON "lab_tech_results" ("experiment_id", "raised_error")
20
+  (1.0ms) CREATE TABLE "schema_migrations" ("version" varchar NOT NULL PRIMARY KEY)
21
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
22
+  (0.8ms) INSERT INTO "schema_migrations" (version) VALUES (20190815192130)
23
+  (0.9ms) CREATE TABLE "ar_internal_metadata" ("key" varchar NOT NULL PRIMARY KEY, "value" varchar, "created_at" datetime NOT NULL, "updated_at" datetime NOT NULL)
24
+ ActiveRecord::InternalMetadata Load (0.1ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ? [["key", "environment"], ["LIMIT", 1]]
25
+  (0.0ms) begin transaction
26
+ SQL (0.3ms) INSERT INTO "ar_internal_metadata" ("key", "value", "created_at", "updated_at") VALUES (?, ?, ?, ?) [["key", "environment"], ["value", "test"], ["created_at", "2019-08-22 20:52:05.257722"], ["updated_at", "2019-08-22 20:52:05.257722"]]
27
+  (0.7ms) commit transaction
28
+ ActiveRecord::InternalMetadata Load (0.1ms) SELECT "ar_internal_metadata".* FROM "ar_internal_metadata" WHERE "ar_internal_metadata"."key" = ? LIMIT ? [["key", "environment"], ["LIMIT", 1]]
29
+  (0.0ms) begin transaction
30
+  (0.0ms) commit transaction
31
+  (0.1ms) SELECT "schema_migrations"."version" FROM "schema_migrations" ORDER BY "schema_migrations"."version" ASC
32
+  (0.1ms) begin transaction
33
+  (0.0ms) rollback transaction
34
+  (0.0ms) begin transaction
35
+  (0.1ms) SAVEPOINT active_record_1
36
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "whatever"]]
37
+  (0.0ms) RELEASE SAVEPOINT active_record_1
38
+  (0.2ms) rollback transaction
39
+  (0.0ms) begin transaction
40
+  (0.0ms) rollback transaction
41
+  (0.0ms) begin transaction
42
+  (0.0ms) SAVEPOINT active_record_1
43
+ SQL (0.2ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "Experiment 0"]]
44
+  (0.0ms) RELEASE SAVEPOINT active_record_1
45
+  (0.0ms) SAVEPOINT active_record_1
46
+ SQL (0.1ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "Experiment 1"]]
47
+  (0.0ms) RELEASE SAVEPOINT active_record_1
48
+  (0.2ms) rollback transaction
49
+  (0.0ms) begin transaction
50
+  (0.0ms) SAVEPOINT active_record_1
51
+ SQL (0.2ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "wibble"]]
52
+  (0.0ms) RELEASE SAVEPOINT active_record_1
53
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
54
+  (0.2ms) rollback transaction
55
+  (0.0ms) begin transaction
56
+  (0.0ms) SAVEPOINT active_record_1
57
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "wibble"]]
58
+  (0.0ms) RELEASE SAVEPOINT active_record_1
59
+  (0.0ms) SAVEPOINT active_record_1
60
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "percent_enabled" = ? WHERE "lab_tech_experiments"."id" = ? [["percent_enabled", 100], ["id", 1]]
61
+  (0.0ms) RELEASE SAVEPOINT active_record_1
62
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
63
+  (0.1ms) SAVEPOINT active_record_1
64
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:05.413815"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.00000761449337e-06]]
65
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- true\n"], ["created_at", "2019-08-22 20:52:05.415182"]]
66
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- true\n"], ["created_at", "2019-08-22 20:52:05.416046"]]
67
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
68
+  (0.0ms) RELEASE SAVEPOINT active_record_1
69
+  (0.3ms) rollback transaction
70
+  (0.0ms) begin transaction
71
+  (0.0ms) SAVEPOINT active_record_1
72
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "wibble"]]
73
+  (0.0ms) RELEASE SAVEPOINT active_record_1
74
+  (0.0ms) SAVEPOINT active_record_1
75
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "percent_enabled" = ? WHERE "lab_tech_experiments"."id" = ? [["percent_enabled", 100], ["id", 1]]
76
+  (0.0ms) RELEASE SAVEPOINT active_record_1
77
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
78
+  (0.3ms) rollback transaction
79
+  (0.0ms) begin transaction
80
+  (0.0ms) SAVEPOINT active_record_1
81
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "wibble"]]
82
+  (0.0ms) RELEASE SAVEPOINT active_record_1
83
+  (0.0ms) SAVEPOINT active_record_1
84
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "percent_enabled" = ? WHERE "lab_tech_experiments"."id" = ? [["percent_enabled", 100], ["id", 1]]
85
+  (0.0ms) RELEASE SAVEPOINT active_record_1
86
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
87
+  (0.1ms) SAVEPOINT active_record_1
88
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", -1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:05.435732"], ["control_duration", 0.0], ["candidate_duration", 1.9999861251562834e-06]]
89
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.0], ["value", "--- CONTROL\n"], ["created_at", "2019-08-22 20:52:05.437054"]]
90
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- CANDIDATE\n"], ["created_at", "2019-08-22 20:52:05.437984"]]
91
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
92
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
93
+  (0.0ms) RELEASE SAVEPOINT active_record_1
94
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" ASC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
95
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
96
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
97
+  (0.3ms) rollback transaction
98
+  (0.0ms) begin transaction
99
+  (0.0ms) SAVEPOINT active_record_1
100
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "wibble"]]
101
+  (0.0ms) RELEASE SAVEPOINT active_record_1
102
+  (0.0ms) SAVEPOINT active_record_1
103
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "percent_enabled" = ? WHERE "lab_tech_experiments"."id" = ? [["percent_enabled", 100], ["id", 1]]
104
+  (0.0ms) RELEASE SAVEPOINT active_record_1
105
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
106
+  (0.0ms) SAVEPOINT active_record_1
107
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:05.448977"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 0.0]]
108
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- Yes indeedily!\n"], ["created_at", "2019-08-22 20:52:05.449902"]]
109
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.0], ["value", "--- You suck-diddly-uck, Flanders!\n"], ["created_at", "2019-08-22 20:52:05.450682"]]
110
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
111
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
112
+  (0.0ms) RELEASE SAVEPOINT active_record_1
113
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" ASC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
114
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
115
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
116
+  (0.4ms) rollback transaction
117
+  (0.0ms) begin transaction
118
+  (0.0ms) SAVEPOINT active_record_1
119
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name") VALUES (?) [["name", "wibble"]]
120
+  (0.0ms) RELEASE SAVEPOINT active_record_1
121
+  (0.0ms) SAVEPOINT active_record_1
122
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "percent_enabled" = ? WHERE "lab_tech_experiments"."id" = ? [["percent_enabled", 100], ["id", 1]]
123
+  (0.0ms) RELEASE SAVEPOINT active_record_1
124
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
125
+  (0.0ms) SAVEPOINT active_record_1
126
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.0], ["created_at", "2019-08-22 20:52:05.459353"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.00000761449337e-06]]
127
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.460298"]]
128
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.461122"]]
129
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
130
+  (0.0ms) RELEASE SAVEPOINT active_record_1
131
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
132
+  (0.2ms) rollback transaction
133
+  (0.0ms) begin transaction
134
+  (0.0ms) rollback transaction
135
+  (0.0ms) begin transaction
136
+  (0.0ms) rollback transaction
137
+  (0.0ms) begin transaction
138
+  (0.0ms) rollback transaction
139
+  (0.0ms) begin transaction
140
+  (0.0ms) rollback transaction
141
+  (0.0ms) begin transaction
142
+  (0.0ms) rollback transaction
143
+  (0.0ms) begin transaction
144
+  (0.0ms) rollback transaction
145
+  (0.0ms) begin transaction
146
+  (0.0ms) rollback transaction
147
+  (0.0ms) begin transaction
148
+  (0.0ms) rollback transaction
149
+  (0.0ms) begin transaction
150
+  (0.0ms) rollback transaction
151
+  (0.0ms) begin transaction
152
+  (0.0ms) rollback transaction
153
+  (0.0ms) begin transaction
154
+  (0.0ms) rollback transaction
155
+  (0.0ms) begin transaction
156
+  (0.0ms) rollback transaction
157
+  (0.0ms) begin transaction
158
+  (0.0ms) rollback transaction
159
+  (0.0ms) begin transaction
160
+  (0.0ms) rollback transaction
161
+  (0.0ms) begin transaction
162
+  (0.0ms) rollback transaction
163
+  (0.0ms) begin transaction
164
+  (0.0ms) rollback transaction
165
+  (0.0ms) begin transaction
166
+  (0.0ms) rollback transaction
167
+  (0.0ms) begin transaction
168
+  (0.0ms) rollback transaction
169
+  (0.0ms) begin transaction
170
+  (0.0ms) rollback transaction
171
+  (0.0ms) begin transaction
172
+  (0.0ms) rollback transaction
173
+  (0.0ms) begin transaction
174
+  (0.0ms) rollback transaction
175
+  (0.0ms) begin transaction
176
+  (0.0ms) rollback transaction
177
+  (0.0ms) begin transaction
178
+  (0.0ms) rollback transaction
179
+  (0.0ms) begin transaction
180
+  (0.0ms) rollback transaction
181
+  (0.0ms) begin transaction
182
+  (0.0ms) rollback transaction
183
+  (0.0ms) begin transaction
184
+  (0.0ms) rollback transaction
185
+  (0.0ms) begin transaction
186
+  (0.0ms) rollback transaction
187
+  (0.0ms) begin transaction
188
+  (0.0ms) rollback transaction
189
+  (0.0ms) begin transaction
190
+  (0.0ms) SAVEPOINT active_record_1
191
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
192
+  (0.0ms) RELEASE SAVEPOINT active_record_1
193
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_observations"
194
+  (0.0ms) SELECT COUNT(*) FROM "lab_tech_results"
195
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
196
+  (0.0ms) SAVEPOINT active_record_1
197
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.0], ["created_at", "2019-08-22 20:52:05.484299"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.00000761449337e-06]]
198
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.485433"]]
199
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- :wobble\n"], ["created_at", "2019-08-22 20:52:05.486486"]]
200
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
201
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
202
+  (0.0ms) RELEASE SAVEPOINT active_record_1
203
+  (0.0ms) SELECT COUNT(*) FROM "lab_tech_results"
204
+  (0.0ms) SELECT COUNT(*) FROM "lab_tech_observations"
205
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
206
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
207
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
208
+  (0.4ms) rollback transaction
209
+  (0.0ms) begin transaction
210
+  (0.0ms) SAVEPOINT active_record_1
211
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
212
+  (0.0ms) RELEASE SAVEPOINT active_record_1
213
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
214
+  (0.0ms) SAVEPOINT active_record_1
215
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "raised_error", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["raised_error", "t"], ["time_delta", -8.99998121894896e-06], ["speedup_factor", -5.499956344586729], ["created_at", "2019-08-22 20:52:05.494791"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.09999964479357e-05]]
216
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.495862"]]
217
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "exception_class", "exception_message", "exception_backtrace", "created_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.09999964479357e-05], ["exception_class", "Timeout::Error"], ["exception_message", "nope"], ["exception_backtrace", "[\"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:181:in `block (5 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/observation.rb:33:in `initialize'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `new'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `run'\", \"/Users/sam/work/lab_tech/app/models/lab_tech/experiment.rb:148:in `run'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:37:in `science'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:179:in `block (3 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:257:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:257:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:604:in `block in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:9:in `block (3 levels) in <top (required)>'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:68:in `publish_results_in_test_mode'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:8:in `block (2 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-rails-3.8.2/lib/rspec/rails/adapters.rb:127:in `block (2 levels) in <module:MinitestLifecycleAdapter>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:607:in `run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:254:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:633:in `block in run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:595:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/configuration.rb:2008:in `with_suite_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:111:in `block in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/reporter.rb:74:in `report'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:110:in `run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:87:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:71:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:45:in `invoke'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/exe/rspec:4:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `kernel_load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:28:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:465:in `exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:27:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:18:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:30:in `block in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:22:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `<main>'\"]"], ["created_at", "2019-08-22 20:52:05.496699"]]
218
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
219
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "timed_out_count" = COALESCE("timed_out_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
220
+  (0.0ms) RELEASE SAVEPOINT active_record_1
221
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
222
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
223
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["equivalent", "t"], ["raised_error", "f"]]
224
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["equivalent", "f"], ["raised_error", "f"]]
225
+ LabTech::Result Load (0.2ms) SELECT "lab_tech_results".* FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["equivalent", "f"], ["raised_error", "t"]]
226
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["equivalent", "f"], ["raised_error", "t"]]
227
+ LabTech::Result Load (0.2ms) SELECT "lab_tech_results".* FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["equivalent", "f"], ["raised_error", "t"]]
228
+  (0.4ms) rollback transaction
229
+  (0.0ms) begin transaction
230
+  (0.0ms) SAVEPOINT active_record_1
231
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
232
+  (0.0ms) RELEASE SAVEPOINT active_record_1
233
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
234
+  (0.0ms) SAVEPOINT active_record_1
235
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 0.5], ["created_at", "2019-08-22 20:52:05.512703"], ["control_duration", 0.5], ["candidate_duration", 0.0]]
236
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.5], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.513725"]]
237
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.0], ["value", "--- :wobble\n"], ["created_at", "2019-08-22 20:52:05.514596"]]
238
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
239
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
240
+  (0.0ms) RELEASE SAVEPOINT active_record_1
241
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
242
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
243
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
244
+  (0.3ms) rollback transaction
245
+  (0.0ms) begin transaction
246
+  (0.1ms) SAVEPOINT active_record_1
247
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
248
+  (0.0ms) RELEASE SAVEPOINT active_record_1
249
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
250
+  (0.1ms) SAVEPOINT active_record_1
251
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 0.0], ["created_at", "2019-08-22 20:52:05.523063"], ["control_duration", 0.0], ["candidate_duration", 0.0]]
252
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.0], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.524149"]]
253
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.0], ["value", "--- :wobble\n"], ["created_at", "2019-08-22 20:52:05.524982"]]
254
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
255
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
256
+  (0.0ms) RELEASE SAVEPOINT active_record_1
257
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
258
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
259
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
260
+  (0.3ms) rollback transaction
261
+  (0.0ms) begin transaction
262
+  (0.0ms) SAVEPOINT active_record_1
263
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
264
+  (0.0ms) RELEASE SAVEPOINT active_record_1
265
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
266
+  (0.0ms) SAVEPOINT active_record_1
267
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:05.532874"], ["control_duration", 0.5], ["candidate_duration", 0.5]]
268
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.5], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.533962"]]
269
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.5], ["value", "--- :wobble\n"], ["created_at", "2019-08-22 20:52:05.534975"]]
270
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
271
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
272
+  (0.0ms) RELEASE SAVEPOINT active_record_1
273
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
274
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
275
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
276
+  (0.3ms) rollback transaction
277
+  (0.0ms) begin transaction
278
+  (0.0ms) SAVEPOINT active_record_1
279
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
280
+  (0.0ms) RELEASE SAVEPOINT active_record_1
281
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
282
+  (0.0ms) SAVEPOINT active_record_1
283
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:05.542582"], ["control_duration", 0.5], ["candidate_duration", 0.5]]
284
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.5], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.543727"]]
285
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.5], ["value", "--- :wobble\n"], ["created_at", "2019-08-22 20:52:05.544610"]]
286
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
287
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
288
+  (0.0ms) RELEASE SAVEPOINT active_record_1
289
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
290
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
291
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
292
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
293
+  (0.3ms) rollback transaction
294
+  (0.0ms) begin transaction
295
+  (0.0ms) SAVEPOINT active_record_1
296
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
297
+  (0.0ms) RELEASE SAVEPOINT active_record_1
298
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
299
+  (0.1ms) SAVEPOINT active_record_1
300
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", -0.5], ["speedup_factor", -2.0], ["created_at", "2019-08-22 20:52:05.552832"], ["control_duration", 0.5], ["candidate_duration", 1.0]]
301
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.5], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.554123"]]
302
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.0], ["value", "--- :wobble\n"], ["created_at", "2019-08-22 20:52:05.555110"]]
303
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
304
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
305
+  (0.0ms) RELEASE SAVEPOINT active_record_1
306
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
307
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
308
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
309
+  (0.3ms) rollback transaction
310
+  (0.0ms) begin transaction
311
+  (0.0ms) SAVEPOINT active_record_1
312
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
313
+  (0.0ms) RELEASE SAVEPOINT active_record_1
314
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
315
+  (0.0ms) SAVEPOINT active_record_1
316
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:05.563091"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.00000761449337e-06]]
317
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.564176"]]
318
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- :WIBBLE\n"], ["created_at", "2019-08-22 20:52:05.565021"]]
319
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
320
+  (0.0ms) RELEASE SAVEPOINT active_record_1
321
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
322
+  (0.4ms) rollback transaction
323
+  (0.1ms) begin transaction
324
+  (0.0ms) SAVEPOINT active_record_1
325
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
326
+  (0.1ms) RELEASE SAVEPOINT active_record_1
327
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
328
+  (0.0ms) SAVEPOINT active_record_1
329
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "raised_error", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["raised_error", "t"], ["time_delta", -1.09999964479357e-05], ["speedup_factor", -11.999912689173458], ["created_at", "2019-08-22 20:52:05.570867"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.200000406242907e-05]]
330
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.571923"]]
331
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "exception_class", "exception_message", "exception_backtrace", "created_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.200000406242907e-05], ["exception_class", "RuntimeError"], ["exception_message", "nope"], ["exception_backtrace", "[\"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:130:in `block (6 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/observation.rb:33:in `initialize'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `new'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `run'\", \"/Users/sam/work/lab_tech/app/models/lab_tech/experiment.rb:148:in `run'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:37:in `science'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:128:in `block (4 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:348:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:507:in `block in run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:593:in `block in run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `reverse_each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:462:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:497:in `run_before_example'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:256:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:604:in `block in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:9:in `block (3 levels) in <top (required)>'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:68:in `publish_results_in_test_mode'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:8:in `block (2 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-rails-3.8.2/lib/rspec/rails/adapters.rb:127:in `block (2 levels) in <module:MinitestLifecycleAdapter>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:607:in `run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:254:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:633:in `block in run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:595:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/configuration.rb:2008:in `with_suite_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:111:in `block in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/reporter.rb:74:in `report'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:110:in `run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:87:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:71:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:45:in `invoke'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/exe/rspec:4:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `kernel_load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:28:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:465:in `exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:27:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:18:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:30:in `block in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:22:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `<main>'\"]"], ["created_at", "2019-08-22 20:52:05.572787"]]
332
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
333
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
334
+  (0.0ms) RELEASE SAVEPOINT active_record_1
335
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
336
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
337
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
338
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
339
+  (0.3ms) rollback transaction
340
+  (0.0ms) begin transaction
341
+  (0.0ms) SAVEPOINT active_record_1
342
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
343
+  (0.0ms) RELEASE SAVEPOINT active_record_1
344
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
345
+  (0.0ms) SAVEPOINT active_record_1
346
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "raised_error", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["raised_error", "t"], ["time_delta", -1.1999974958598614e-05], ["created_at", "2019-08-22 20:52:05.581395"], ["control_duration", 0.0], ["candidate_duration", 1.1999974958598614e-05]]
347
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.0], ["value", "--- :wibble\n"], ["created_at", "2019-08-22 20:52:05.582462"]]
348
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "exception_class", "exception_message", "exception_backtrace", "created_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.1999974958598614e-05], ["exception_class", "Timeout::Error"], ["exception_message", "nope"], ["exception_backtrace", "[\"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:155:in `block (6 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/observation.rb:33:in `initialize'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `new'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `run'\", \"/Users/sam/work/lab_tech/app/models/lab_tech/experiment.rb:148:in `run'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:37:in `science'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:153:in `block (4 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:348:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:507:in `block in run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:593:in `block in run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `reverse_each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:462:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:497:in `run_before_example'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:256:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:604:in `block in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:9:in `block (3 levels) in <top (required)>'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:68:in `publish_results_in_test_mode'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/result_spec.rb:8:in `block (2 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-rails-3.8.2/lib/rspec/rails/adapters.rb:127:in `block (2 levels) in <module:MinitestLifecycleAdapter>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:607:in `run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:254:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:633:in `block in run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:595:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/configuration.rb:2008:in `with_suite_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:111:in `block in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/reporter.rb:74:in `report'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:110:in `run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:87:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:71:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:45:in `invoke'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/exe/rspec:4:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `kernel_load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:28:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:465:in `exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:27:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:18:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:30:in `block in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:22:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `<main>'\"]"], ["created_at", "2019-08-22 20:52:05.583302"]]
349
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
350
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "timed_out_count" = COALESCE("timed_out_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
351
+  (0.0ms) RELEASE SAVEPOINT active_record_1
352
+ LabTech::Result Load (0.0ms) SELECT "lab_tech_results".* FROM "lab_tech_results" ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["LIMIT", 1]]
353
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
354
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
355
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
356
+ LabTech::Result Load (0.2ms) SELECT "lab_tech_results".* FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["equivalent", "f"], ["raised_error", "t"]]
357
+  (0.3ms) rollback transaction
358
+  (0.0ms) begin transaction
359
+  (0.0ms) rollback transaction
360
+  (0.0ms) begin transaction
361
+  (0.0ms) rollback transaction
362
+  (0.0ms) begin transaction
363
+  (0.0ms) rollback transaction
364
+  (0.0ms) begin transaction
365
+  (0.0ms) rollback transaction
366
+  (0.0ms) begin transaction
367
+  (0.0ms) rollback transaction
368
+  (0.0ms) begin transaction
369
+  (0.0ms) rollback transaction
370
+  (0.0ms) begin transaction
371
+  (0.0ms) rollback transaction
372
+  (0.0ms) begin transaction
373
+  (0.0ms) rollback transaction
374
+  (0.0ms) begin transaction
375
+  (0.0ms) rollback transaction
376
+  (0.0ms) begin transaction
377
+  (0.0ms) rollback transaction
378
+  (0.0ms) begin transaction
379
+  (0.0ms) rollback transaction
380
+  (0.0ms) begin transaction
381
+  (0.0ms) rollback transaction
382
+  (0.0ms) begin transaction
383
+  (0.0ms) rollback transaction
384
+  (0.0ms) begin transaction
385
+  (0.0ms) SAVEPOINT active_record_1
386
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
387
+  (0.0ms) RELEASE SAVEPOINT active_record_1
388
+ LabTech::Result Exists (0.1ms) SELECT 1 AS one FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
389
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
390
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
391
+  (0.3ms) rollback transaction
392
+  (0.0ms) begin transaction
393
+  (0.0ms) SAVEPOINT active_record_1
394
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
395
+  (0.0ms) RELEASE SAVEPOINT active_record_1
396
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
397
+  (0.0ms) SAVEPOINT active_record_1
398
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.0], ["created_at", "2019-08-22 20:52:05.605095"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.00000761449337e-06]]
399
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.606273"]]
400
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- bar\n"], ["created_at", "2019-08-22 20:52:05.607158"]]
401
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
402
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
403
+  (0.1ms) RELEASE SAVEPOINT active_record_1
404
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
405
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
406
+  (0.0ms) SAVEPOINT active_record_1
407
+  (0.1ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
408
+  (0.1ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
409
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
410
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
411
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
412
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
413
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
414
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
415
+  (0.0ms) RELEASE SAVEPOINT active_record_1
416
+  (0.3ms) rollback transaction
417
+  (0.0ms) begin transaction
418
+  (0.0ms) SAVEPOINT active_record_1
419
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
420
+  (0.0ms) RELEASE SAVEPOINT active_record_1
421
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
422
+  (0.1ms) SAVEPOINT active_record_1
423
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "raised_error", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["raised_error", "t"], ["time_delta", -8.99998121894896e-06], ["speedup_factor", -5.499956344586729], ["created_at", "2019-08-22 20:52:05.635652"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.09999964479357e-05]]
424
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.636990"]]
425
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "exception_class", "exception_message", "exception_backtrace", "created_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.09999964479357e-05], ["exception_class", "RuntimeError"], ["exception_message", "nope"], ["exception_backtrace", "[\"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:98:in `block (4 levels) in <top (required)>'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:12:in `block (3 levels) in record_experiment'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/observation.rb:33:in `initialize'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `new'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `run'\", \"/Users/sam/work/lab_tech/app/models/lab_tech/experiment.rb:148:in `run'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:37:in `science'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:10:in `block in record_experiment'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:68:in `publish_results_in_test_mode'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:8:in `record_experiment'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:98:in `block (3 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:348:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:507:in `block in run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:593:in `block in run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `reverse_each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:462:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:497:in `run_before_example'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:256:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:604:in `block in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-rails-3.8.2/lib/rspec/rails/adapters.rb:127:in `block (2 levels) in <module:MinitestLifecycleAdapter>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:607:in `run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:254:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:633:in `block in run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:595:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/configuration.rb:2008:in `with_suite_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:111:in `block in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/reporter.rb:74:in `report'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:110:in `run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:87:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:71:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:45:in `invoke'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/exe/rspec:4:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `kernel_load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:28:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:465:in `exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:27:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:18:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:30:in `block in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:22:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `<main>'\"]"], ["created_at", "2019-08-22 20:52:05.637907"]]
426
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
427
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "other_error_count" = COALESCE("other_error_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
428
+  (0.0ms) RELEASE SAVEPOINT active_record_1
429
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
430
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
431
+  (0.0ms) SAVEPOINT active_record_1
432
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
433
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
434
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
435
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
436
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
437
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
438
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
439
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
440
+  (0.0ms) RELEASE SAVEPOINT active_record_1
441
+  (0.3ms) rollback transaction
442
+  (0.0ms) begin transaction
443
+  (0.0ms) SAVEPOINT active_record_1
444
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
445
+  (0.0ms) RELEASE SAVEPOINT active_record_1
446
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
447
+  (0.0ms) SAVEPOINT active_record_1
448
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "raised_error", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["raised_error", "t"], ["time_delta", -9.000010322779417e-06], ["speedup_factor", -5.500036380040455], ["created_at", "2019-08-22 20:52:05.649232"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 1.09999964479357e-05]]
449
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.650260"]]
450
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "exception_class", "exception_message", "exception_backtrace", "created_at") VALUES (?, ?, ?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.09999964479357e-05], ["exception_class", "Timeout::Error"], ["exception_message", "too slow"], ["exception_backtrace", "[\"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:113:in `block (4 levels) in <top (required)>'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:12:in `block (3 levels) in record_experiment'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/observation.rb:33:in `initialize'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `new'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:224:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/scientist-1.3.0/lib/scientist/experiment.rb:221:in `run'\", \"/Users/sam/work/lab_tech/app/models/lab_tech/experiment.rb:148:in `run'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:37:in `science'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:10:in `block in record_experiment'\", \"/Users/sam/work/lab_tech/lib/lab_tech.rb:68:in `publish_results_in_test_mode'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:8:in `record_experiment'\", \"/Users/sam/work/lab_tech/spec/models/lab_tech/summary_spec.rb:113:in `block (3 levels) in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:348:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:507:in `block in run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:506:in `run_owned_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:593:in `block in run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `reverse_each'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:592:in `run_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:462:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:497:in `run_before_example'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:256:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `block in with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `block in with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:604:in `block in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-rails-3.8.2/lib/rspec/rails/adapters.rb:127:in `block (2 levels) in <module:MinitestLifecycleAdapter>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:450:in `instance_exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:373:in `execute_with'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:606:in `block (2 levels) in run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:345:in `call'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:607:in `run_around_example_hooks_for'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/hooks.rb:464:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:460:in `with_around_example_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:503:in `with_around_and_singleton_context_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example.rb:254:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:633:in `block in run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:629:in `run_examples'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:595:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `block in run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/example_group.rb:596:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (3 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `map'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:116:in `block (2 levels) in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/configuration.rb:2008:in `with_suite_hooks'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:111:in `block in run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/reporter.rb:74:in `report'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:110:in `run_specs'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:87:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:71:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/lib/rspec/core/runner.rb:45:in `invoke'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/rspec-core-3.8.2/exe/rspec:4:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/rspec:23:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:74:in `kernel_load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli/exec.rb:28:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:465:in `exec'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/command.rb:27:in `run'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/invocation.rb:126:in `invoke_command'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor.rb:387:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:27:in `dispatch'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/vendor/thor/lib/thor/base.rb:466:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/cli.rb:18:in `start'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:30:in `block in <top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/lib/bundler/friendly_errors.rb:124:in `with_friendly_errors'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/lib/ruby/gems/2.6.0/gems/bundler-2.0.2/exe/bundle:22:in `<top (required)>'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `load'\", \"/Users/sam/.asdf/installs/ruby/2.6.3/bin/bundle:23:in `<main>'\"]"], ["created_at", "2019-08-22 20:52:05.651207"]]
451
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') [["result_id", 1]]
452
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "timed_out_count" = COALESCE("timed_out_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
453
+  (0.0ms) RELEASE SAVEPOINT active_record_1
454
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
455
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
456
+  (0.0ms) SAVEPOINT active_record_1
457
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
458
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
459
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
460
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
461
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
462
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
463
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
464
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
465
+  (0.0ms) RELEASE SAVEPOINT active_record_1
466
+  (0.4ms) rollback transaction
467
+  (0.0ms) begin transaction
468
+  (0.0ms) SAVEPOINT active_record_1
469
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
470
+  (0.0ms) RELEASE SAVEPOINT active_record_1
471
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
472
+  (0.0ms) SAVEPOINT active_record_1
473
+ SQL (0.4ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.000029104455892], ["created_at", "2019-08-22 20:52:05.662945"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 1.9999861251562834e-06]]
474
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.664346"]]
475
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.665391"]]
476
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
477
+  (0.1ms) RELEASE SAVEPOINT active_record_1
478
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "time_delta" = NULL, "speedup_factor" = NULL WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
479
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
480
+  (0.2ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
481
+  (0.1ms) SAVEPOINT active_record_1
482
+  (0.1ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
483
+  (0.1ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
484
+  (0.2ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
485
+  (0.2ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
486
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
487
+  (0.2ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
488
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
489
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
490
+  (0.1ms) RELEASE SAVEPOINT active_record_1
491
+  (0.4ms) rollback transaction
492
+  (0.0ms) begin transaction
493
+  (0.0ms) SAVEPOINT active_record_1
494
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
495
+  (0.0ms) RELEASE SAVEPOINT active_record_1
496
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
497
+  (0.1ms) SAVEPOINT active_record_1
498
+ SQL (0.4ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:05.681575"], ["control_duration", 0.0], ["candidate_duration", 1.9999861251562834e-06]]
499
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.683316"]]
500
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.684602"]]
501
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
502
+  (0.2ms) RELEASE SAVEPOINT active_record_1
503
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "time_delta" = NULL, "speedup_factor" = NULL WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
504
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
505
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
506
+  (0.0ms) SAVEPOINT active_record_1
507
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
508
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
509
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
510
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
511
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
512
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
513
+  (0.2ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
514
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
515
+  (0.1ms) RELEASE SAVEPOINT active_record_1
516
+  (0.5ms) rollback transaction
517
+  (0.0ms) begin transaction
518
+  (0.0ms) SAVEPOINT active_record_1
519
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
520
+  (0.0ms) RELEASE SAVEPOINT active_record_1
521
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
522
+  (0.0ms) SAVEPOINT active_record_1
523
+ SQL (0.9ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.0], ["created_at", "2019-08-22 20:52:05.698450"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 2.00001522898674e-06]]
524
+ SQL (0.8ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.700641"]]
525
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.703087"]]
526
+ SQL (0.2ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
527
+  (0.1ms) RELEASE SAVEPOINT active_record_1
528
+ LabTech::Result Load (0.2ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
529
+  (0.0ms) SAVEPOINT active_record_1
530
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 1.0], ["speedup_factor", 0.0], ["time_delta", 0.0], ["id", 1]]
531
+  (0.0ms) RELEASE SAVEPOINT active_record_1
532
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
533
+  (0.0ms) SAVEPOINT active_record_1
534
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
535
+  (0.0ms) RELEASE SAVEPOINT active_record_1
536
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
537
+  (0.0ms) SAVEPOINT active_record_1
538
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 2]]
539
+  (0.1ms) RELEASE SAVEPOINT active_record_1
540
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" ASC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
541
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
542
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
543
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
544
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
545
+  (0.0ms) SAVEPOINT active_record_1
546
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
547
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
548
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
549
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
550
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
551
+  (0.2ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
552
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
553
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
554
+  (0.0ms) RELEASE SAVEPOINT active_record_1
555
+  (0.3ms) rollback transaction
556
+  (0.0ms) begin transaction
557
+  (0.0ms) SAVEPOINT active_record_1
558
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
559
+  (0.0ms) RELEASE SAVEPOINT active_record_1
560
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
561
+  (0.0ms) SAVEPOINT active_record_1
562
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:05.726396"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 0.0]]
563
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.727440"]]
564
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.728359"]]
565
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
566
+  (0.0ms) RELEASE SAVEPOINT active_record_1
567
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
568
+  (0.0ms) SAVEPOINT active_record_1
569
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 1.0], ["speedup_factor", 0.0], ["time_delta", 0.0], ["id", 1]]
570
+  (0.0ms) RELEASE SAVEPOINT active_record_1
571
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
572
+  (0.0ms) SAVEPOINT active_record_1
573
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
574
+  (0.0ms) RELEASE SAVEPOINT active_record_1
575
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
576
+  (0.0ms) SAVEPOINT active_record_1
577
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 2]]
578
+  (0.1ms) RELEASE SAVEPOINT active_record_1
579
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" ASC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
580
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
581
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
582
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
583
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
584
+  (0.0ms) SAVEPOINT active_record_1
585
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
586
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
587
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
588
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
589
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
590
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
591
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
592
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
593
+  (0.0ms) RELEASE SAVEPOINT active_record_1
594
+  (0.3ms) rollback transaction
595
+  (0.0ms) begin transaction
596
+  (0.0ms) SAVEPOINT active_record_1
597
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
598
+  (0.0ms) RELEASE SAVEPOINT active_record_1
599
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
600
+  (0.0ms) SAVEPOINT active_record_1
601
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 9.999785106629133e-07], ["speedup_factor", 1.9999708963911524], ["created_at", "2019-08-22 20:52:05.747961"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 1.00000761449337e-06]]
602
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.749044"]]
603
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.750002"]]
604
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
605
+  (0.0ms) RELEASE SAVEPOINT active_record_1
606
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
607
+  (0.1ms) SAVEPOINT active_record_1
608
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.1], ["speedup_factor", 10.0], ["time_delta", 0.9], ["id", 1]]
609
+  (0.0ms) RELEASE SAVEPOINT active_record_1
610
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
611
+  (0.0ms) SAVEPOINT active_record_1
612
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
613
+  (0.0ms) RELEASE SAVEPOINT active_record_1
614
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
615
+  (0.0ms) SAVEPOINT active_record_1
616
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.1], ["id", 2]]
617
+  (0.1ms) RELEASE SAVEPOINT active_record_1
618
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" ASC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
619
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
620
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
621
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
622
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
623
+  (0.0ms) SAVEPOINT active_record_1
624
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
625
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
626
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
627
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
628
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
629
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
630
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
631
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
632
+  (0.0ms) RELEASE SAVEPOINT active_record_1
633
+  (0.3ms) rollback transaction
634
+  (0.0ms) begin transaction
635
+  (0.0ms) SAVEPOINT active_record_1
636
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
637
+  (0.0ms) RELEASE SAVEPOINT active_record_1
638
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
639
+  (0.0ms) SAVEPOINT active_record_1
640
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 9.999785106629133e-07], ["speedup_factor", 1.9999708963911524], ["created_at", "2019-08-22 20:52:05.770063"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 1.00000761449337e-06]]
641
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.771139"]]
642
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.772035"]]
643
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
644
+  (0.0ms) RELEASE SAVEPOINT active_record_1
645
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
646
+  (0.1ms) SAVEPOINT active_record_1
647
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 10.0], ["speedup_factor", -10.0], ["time_delta", -9.0], ["id", 1]]
648
+  (0.0ms) RELEASE SAVEPOINT active_record_1
649
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
650
+  (0.0ms) SAVEPOINT active_record_1
651
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
652
+  (0.1ms) RELEASE SAVEPOINT active_record_1
653
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
654
+  (0.0ms) SAVEPOINT active_record_1
655
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 10.0], ["id", 2]]
656
+  (0.0ms) RELEASE SAVEPOINT active_record_1
657
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" ASC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
658
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
659
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
660
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
661
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
662
+  (0.0ms) SAVEPOINT active_record_1
663
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
664
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
665
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
666
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
667
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
668
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
669
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
670
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
671
+  (0.0ms) RELEASE SAVEPOINT active_record_1
672
+  (0.3ms) rollback transaction
673
+  (0.0ms) begin transaction
674
+  (0.0ms) SAVEPOINT active_record_1
675
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
676
+  (0.0ms) RELEASE SAVEPOINT active_record_1
677
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
678
+  (0.0ms) SAVEPOINT active_record_1
679
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.9999861251562834e-06], ["speedup_factor", 2.9999708963911527], ["created_at", "2019-08-22 20:52:05.790543"], ["control_duration", 2.9999937396496534e-06], ["candidate_duration", 1.00000761449337e-06]]
680
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.9999937396496534e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.791597"]]
681
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.792651"]]
682
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
683
+  (0.0ms) RELEASE SAVEPOINT active_record_1
684
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
685
+  (0.0ms) SAVEPOINT active_record_1
686
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 10.0], ["speedup_factor", -10.0], ["time_delta", -9.0], ["id", 1]]
687
+  (0.1ms) RELEASE SAVEPOINT active_record_1
688
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
689
+  (0.1ms) SAVEPOINT active_record_1
690
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
691
+  (0.1ms) RELEASE SAVEPOINT active_record_1
692
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
693
+  (0.0ms) SAVEPOINT active_record_1
694
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 10.0], ["id", 2]]
695
+  (0.1ms) RELEASE SAVEPOINT active_record_1
696
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
697
+  (0.1ms) SAVEPOINT active_record_1
698
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.0], ["created_at", "2019-08-22 20:52:05.803960"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 2.00001522898674e-06]]
699
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.805423"]]
700
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.806386"]]
701
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
702
+  (0.1ms) RELEASE SAVEPOINT active_record_1
703
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
704
+  (0.0ms) SAVEPOINT active_record_1
705
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 2.0], ["time_delta", -1.0], ["id", 2]]
706
+  (0.1ms) RELEASE SAVEPOINT active_record_1
707
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 2], ["LIMIT", 1]]
708
+  (0.0ms) SAVEPOINT active_record_1
709
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 3]]
710
+  (0.1ms) RELEASE SAVEPOINT active_record_1
711
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 2], ["LIMIT", 1]]
712
+  (0.0ms) SAVEPOINT active_record_1
713
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 2.0], ["id", 4]]
714
+  (0.0ms) RELEASE SAVEPOINT active_record_1
715
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
716
+  (0.0ms) SAVEPOINT active_record_1
717
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.0], ["created_at", "2019-08-22 20:52:05.824847"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 2.00001522898674e-06]]
718
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.826024"]]
719
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.826860"]]
720
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
721
+  (0.0ms) RELEASE SAVEPOINT active_record_1
722
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
723
+  (0.1ms) SAVEPOINT active_record_1
724
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 1.0], ["speedup_factor", 0.0], ["time_delta", 0.0], ["id", 3]]
725
+  (0.1ms) RELEASE SAVEPOINT active_record_1
726
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 3], ["LIMIT", 1]]
727
+  (0.0ms) SAVEPOINT active_record_1
728
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 5]]
729
+  (0.0ms) RELEASE SAVEPOINT active_record_1
730
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 3], ["LIMIT", 1]]
731
+  (0.0ms) SAVEPOINT active_record_1
732
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 6]]
733
+  (0.0ms) RELEASE SAVEPOINT active_record_1
734
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
735
+  (0.1ms) SAVEPOINT active_record_1
736
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.0], ["created_at", "2019-08-22 20:52:05.835618"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 2.00001522898674e-06]]
737
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.836763"]]
738
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.837677"]]
739
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
740
+  (0.0ms) RELEASE SAVEPOINT active_record_1
741
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
742
+  (0.0ms) SAVEPOINT active_record_1
743
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.5], ["speedup_factor", 2.0], ["time_delta", 0.5], ["id", 4]]
744
+  (0.0ms) RELEASE SAVEPOINT active_record_1
745
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 4], ["LIMIT", 1]]
746
+  (0.0ms) SAVEPOINT active_record_1
747
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 7]]
748
+  (0.0ms) RELEASE SAVEPOINT active_record_1
749
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 4], ["LIMIT", 1]]
750
+  (0.0ms) SAVEPOINT active_record_1
751
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.5], ["id", 8]]
752
+  (0.0ms) RELEASE SAVEPOINT active_record_1
753
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
754
+  (0.0ms) SAVEPOINT active_record_1
755
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.9999861251562834e-06], ["speedup_factor", 2.9999708963911527], ["created_at", "2019-08-22 20:52:05.846025"], ["control_duration", 2.9999937396496534e-06], ["candidate_duration", 1.00000761449337e-06]]
756
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "control"], ["duration", 2.9999937396496534e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.846984"]]
757
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.847799"]]
758
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
759
+  (0.0ms) RELEASE SAVEPOINT active_record_1
760
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
761
+  (0.0ms) SAVEPOINT active_record_1
762
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.1], ["speedup_factor", 10.0], ["time_delta", 0.9], ["id", 5]]
763
+  (0.0ms) RELEASE SAVEPOINT active_record_1
764
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 5], ["LIMIT", 1]]
765
+  (0.0ms) SAVEPOINT active_record_1
766
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 9]]
767
+  (0.0ms) RELEASE SAVEPOINT active_record_1
768
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 5], ["LIMIT", 1]]
769
+  (0.0ms) SAVEPOINT active_record_1
770
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.1], ["id", 10]]
771
+  (0.0ms) RELEASE SAVEPOINT active_record_1
772
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
773
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
774
+  (0.0ms) SAVEPOINT active_record_1
775
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
776
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
777
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
778
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
779
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
780
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
781
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
782
+  (0.1ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
783
+  (0.0ms) RELEASE SAVEPOINT active_record_1
784
+  (0.4ms) rollback transaction
785
+  (0.0ms) begin transaction
786
+  (0.1ms) SAVEPOINT active_record_1
787
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
788
+  (0.0ms) RELEASE SAVEPOINT active_record_1
789
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
790
+  (0.0ms) SAVEPOINT active_record_1
791
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 2.00001522898674e-06], ["created_at", "2019-08-22 20:52:05.863984"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 0.0]]
792
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.865046"]]
793
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.865902"]]
794
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
795
+  (0.0ms) RELEASE SAVEPOINT active_record_1
796
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
797
+  (0.0ms) SAVEPOINT active_record_1
798
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 10.0], ["speedup_factor", -10.0], ["time_delta", -9.0], ["id", 1]]
799
+  (0.1ms) RELEASE SAVEPOINT active_record_1
800
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
801
+  (0.0ms) SAVEPOINT active_record_1
802
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
803
+  (0.0ms) RELEASE SAVEPOINT active_record_1
804
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
805
+  (0.0ms) SAVEPOINT active_record_1
806
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 10.0], ["id", 2]]
807
+  (0.0ms) RELEASE SAVEPOINT active_record_1
808
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
809
+  (0.0ms) SAVEPOINT active_record_1
810
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:05.874547"], ["control_duration", 0.0], ["candidate_duration", 1.9999861251562834e-06]]
811
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.875445"]]
812
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.876208"]]
813
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
814
+  (0.0ms) RELEASE SAVEPOINT active_record_1
815
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
816
+  (0.0ms) SAVEPOINT active_record_1
817
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 2.0], ["speedup_factor", -2.0], ["time_delta", -1.0], ["id", 2]]
818
+  (0.0ms) RELEASE SAVEPOINT active_record_1
819
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 2], ["LIMIT", 1]]
820
+  (0.0ms) SAVEPOINT active_record_1
821
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 3]]
822
+  (0.0ms) RELEASE SAVEPOINT active_record_1
823
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 2], ["LIMIT", 1]]
824
+  (0.0ms) SAVEPOINT active_record_1
825
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 2.0], ["id", 4]]
826
+  (0.0ms) RELEASE SAVEPOINT active_record_1
827
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
828
+  (0.0ms) SAVEPOINT active_record_1
829
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:05.883435"], ["control_duration", 0.0], ["candidate_duration", 1.9999861251562834e-06]]
830
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.884290"]]
831
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.885207"]]
832
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
833
+  (0.0ms) RELEASE SAVEPOINT active_record_1
834
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
835
+  (0.0ms) SAVEPOINT active_record_1
836
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 1.0], ["speedup_factor", 0.0], ["time_delta", 0.0], ["id", 3]]
837
+  (0.0ms) RELEASE SAVEPOINT active_record_1
838
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 3], ["LIMIT", 1]]
839
+  (0.0ms) SAVEPOINT active_record_1
840
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 5]]
841
+  (0.0ms) RELEASE SAVEPOINT active_record_1
842
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 3], ["LIMIT", 1]]
843
+  (0.0ms) SAVEPOINT active_record_1
844
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 6]]
845
+  (0.0ms) RELEASE SAVEPOINT active_record_1
846
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
847
+  (0.0ms) SAVEPOINT active_record_1
848
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["created_at", "2019-08-22 20:52:05.893616"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 0.0]]
849
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.894530"]]
850
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.895337"]]
851
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
852
+  (0.0ms) RELEASE SAVEPOINT active_record_1
853
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
854
+  (0.0ms) SAVEPOINT active_record_1
855
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.5], ["speedup_factor", 2.0], ["time_delta", 0.5], ["id", 4]]
856
+  (0.0ms) RELEASE SAVEPOINT active_record_1
857
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 4], ["LIMIT", 1]]
858
+  (0.0ms) SAVEPOINT active_record_1
859
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 7]]
860
+  (0.1ms) RELEASE SAVEPOINT active_record_1
861
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 4], ["LIMIT", 1]]
862
+  (0.0ms) SAVEPOINT active_record_1
863
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.5], ["id", 8]]
864
+  (0.0ms) RELEASE SAVEPOINT active_record_1
865
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
866
+  (0.0ms) SAVEPOINT active_record_1
867
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.000029104455892], ["created_at", "2019-08-22 20:52:05.903068"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 1.9999861251562834e-06]]
868
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.904258"]]
869
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.905081"]]
870
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
871
+  (0.0ms) RELEASE SAVEPOINT active_record_1
872
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
873
+  (0.0ms) SAVEPOINT active_record_1
874
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.1], ["speedup_factor", 10.0], ["time_delta", 0.9], ["id", 5]]
875
+  (0.0ms) RELEASE SAVEPOINT active_record_1
876
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 5], ["LIMIT", 1]]
877
+  (0.0ms) SAVEPOINT active_record_1
878
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 9]]
879
+  (0.0ms) RELEASE SAVEPOINT active_record_1
880
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 5], ["LIMIT", 1]]
881
+  (0.0ms) SAVEPOINT active_record_1
882
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.1], ["id", 10]]
883
+  (0.0ms) RELEASE SAVEPOINT active_record_1
884
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
885
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
886
+  (0.0ms) SAVEPOINT active_record_1
887
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
888
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
889
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
890
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
891
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
892
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
893
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
894
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
895
+  (0.0ms) RELEASE SAVEPOINT active_record_1
896
+  (0.6ms) rollback transaction
897
+  (0.0ms) begin transaction
898
+  (0.1ms) SAVEPOINT active_record_1
899
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
900
+  (0.0ms) RELEASE SAVEPOINT active_record_1
901
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
902
+  (0.0ms) SAVEPOINT active_record_1
903
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:05.920815"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.00000761449337e-06]]
904
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.921938"]]
905
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.923017"]]
906
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
907
+  (0.0ms) RELEASE SAVEPOINT active_record_1
908
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
909
+  (0.0ms) SAVEPOINT active_record_1
910
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 10.0], ["speedup_factor", -10.0], ["time_delta", -9.0], ["id", 1]]
911
+  (0.0ms) RELEASE SAVEPOINT active_record_1
912
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
913
+  (0.0ms) SAVEPOINT active_record_1
914
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 1]]
915
+  (0.0ms) RELEASE SAVEPOINT active_record_1
916
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
917
+  (0.0ms) SAVEPOINT active_record_1
918
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 10.0], ["id", 2]]
919
+  (0.0ms) RELEASE SAVEPOINT active_record_1
920
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
921
+  (0.0ms) SAVEPOINT active_record_1
922
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.000029104455892], ["created_at", "2019-08-22 20:52:05.930863"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 1.9999861251562834e-06]]
923
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.931718"]]
924
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.932552"]]
925
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
926
+  (0.1ms) RELEASE SAVEPOINT active_record_1
927
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
928
+  (0.0ms) SAVEPOINT active_record_1
929
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 2.0], ["speedup_factor", -2.0], ["time_delta", -1.0], ["id", 2]]
930
+  (0.1ms) RELEASE SAVEPOINT active_record_1
931
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 2], ["LIMIT", 1]]
932
+  (0.0ms) SAVEPOINT active_record_1
933
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 3]]
934
+  (0.0ms) RELEASE SAVEPOINT active_record_1
935
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 2], ["LIMIT", 1]]
936
+  (0.0ms) SAVEPOINT active_record_1
937
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 2.0], ["id", 4]]
938
+  (0.0ms) RELEASE SAVEPOINT active_record_1
939
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
940
+  (0.0ms) SAVEPOINT active_record_1
941
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:05.940284"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.00000761449337e-06]]
942
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.941133"]]
943
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.941873"]]
944
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
945
+  (0.0ms) RELEASE SAVEPOINT active_record_1
946
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
947
+  (0.0ms) SAVEPOINT active_record_1
948
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 1.0], ["id", 3]]
949
+  (0.0ms) RELEASE SAVEPOINT active_record_1
950
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 3], ["LIMIT", 1]]
951
+  (0.0ms) SAVEPOINT active_record_1
952
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 5]]
953
+  (0.0ms) RELEASE SAVEPOINT active_record_1
954
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 3], ["LIMIT", 1]]
955
+  (0.0ms) SAVEPOINT active_record_1
956
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 6]]
957
+  (0.0ms) RELEASE SAVEPOINT active_record_1
958
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
959
+  (0.0ms) SAVEPOINT active_record_1
960
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -9.999785106629133e-07], ["speedup_factor", -1.9999708963911524], ["created_at", "2019-08-22 20:52:05.948681"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.9999861251562834e-06]]
961
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.949502"]]
962
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.950221"]]
963
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
964
+  (0.0ms) RELEASE SAVEPOINT active_record_1
965
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
966
+  (0.0ms) SAVEPOINT active_record_1
967
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.5], ["speedup_factor", 2.0], ["time_delta", 0.5], ["id", 4]]
968
+  (0.0ms) RELEASE SAVEPOINT active_record_1
969
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 4], ["LIMIT", 1]]
970
+  (0.0ms) SAVEPOINT active_record_1
971
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 7]]
972
+  (0.0ms) RELEASE SAVEPOINT active_record_1
973
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 4], ["LIMIT", 1]]
974
+  (0.0ms) SAVEPOINT active_record_1
975
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.5], ["id", 8]]
976
+  (0.0ms) RELEASE SAVEPOINT active_record_1
977
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
978
+  (0.0ms) SAVEPOINT active_record_1
979
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -2.00001522898674e-06], ["created_at", "2019-08-22 20:52:05.957646"], ["control_duration", 0.0], ["candidate_duration", 2.00001522898674e-06]]
980
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.958460"]]
981
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.959188"]]
982
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
983
+  (0.0ms) RELEASE SAVEPOINT active_record_1
984
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
985
+  (0.0ms) SAVEPOINT active_record_1
986
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.0], ["candidate_duration", 0.1], ["speedup_factor", 10.0], ["time_delta", 0.9], ["id", 5]]
987
+  (0.0ms) RELEASE SAVEPOINT active_record_1
988
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 5], ["LIMIT", 1]]
989
+  (0.0ms) SAVEPOINT active_record_1
990
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.0], ["id", 9]]
991
+  (0.0ms) RELEASE SAVEPOINT active_record_1
992
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 5], ["LIMIT", 1]]
993
+  (0.0ms) SAVEPOINT active_record_1
994
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.1], ["id", 10]]
995
+  (0.0ms) RELEASE SAVEPOINT active_record_1
996
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
997
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
998
+  (0.0ms) SAVEPOINT active_record_1
999
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1000
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1001
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1002
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
1003
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
1004
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
1005
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
1006
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
1007
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1008
+  (0.7ms) rollback transaction
1009
+  (0.0ms) begin transaction
1010
+  (0.0ms) SAVEPOINT active_record_1
1011
+ SQL (0.3ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
1012
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1013
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1014
+  (0.0ms) SAVEPOINT active_record_1
1015
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.000029104455892], ["created_at", "2019-08-22 20:52:05.974752"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 9.999785106629133e-07]]
1016
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.975669"]]
1017
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.976435"]]
1018
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1019
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1020
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1021
+  (0.0ms) SAVEPOINT active_record_1
1022
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 1.7367], ["candidate_duration", 0.15918569372771518], ["speedup_factor", 10.9099], ["time_delta", 1.5775143062722847], ["id", 1]]
1023
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1024
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
1025
+  (0.0ms) SAVEPOINT active_record_1
1026
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 1.7367], ["id", 1]]
1027
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1028
+ LabTech::Observation Load (0.2ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
1029
+  (0.0ms) SAVEPOINT active_record_1
1030
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.15918569372771518], ["id", 2]]
1031
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1032
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1033
+  (0.0ms) SAVEPOINT active_record_1
1034
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["created_at", "2019-08-22 20:52:05.983322"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 0.0]]
1035
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.984071"]]
1036
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:05.984817"]]
1037
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1038
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1039
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1040
+  (0.0ms) SAVEPOINT active_record_1
1041
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.0642], ["candidate_duration", 0.20661485999999998], ["speedup_factor", -3.2183], ["time_delta", -0.14241485999999998], ["id", 2]]
1042
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1043
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 2], ["LIMIT", 1]]
1044
+  (0.0ms) SAVEPOINT active_record_1
1045
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0642], ["id", 3]]
1046
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1047
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 2], ["LIMIT", 1]]
1048
+  (0.0ms) SAVEPOINT active_record_1
1049
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.20661485999999998], ["id", 4]]
1050
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1051
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1052
+  (0.0ms) SAVEPOINT active_record_1
1053
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.0], ["created_at", "2019-08-22 20:52:05.999647"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.00000761449337e-06]]
1054
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.000542"]]
1055
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.001229"]]
1056
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1057
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1058
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1059
+  (0.0ms) SAVEPOINT active_record_1
1060
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.0702], ["candidate_duration", 0.07656012], ["speedup_factor", -1.0906], ["time_delta", -0.006360119999999997], ["id", 3]]
1061
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1062
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 3], ["LIMIT", 1]]
1063
+  (0.0ms) SAVEPOINT active_record_1
1064
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0702], ["id", 5]]
1065
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1066
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 3], ["LIMIT", 1]]
1067
+  (0.0ms) SAVEPOINT active_record_1
1068
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.07656012], ["id", 6]]
1069
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1070
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1071
+  (0.0ms) SAVEPOINT active_record_1
1072
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:06.007791"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 0.0]]
1073
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.008542"]]
1074
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.009204"]]
1075
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1076
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1077
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1078
+  (0.0ms) SAVEPOINT active_record_1
1079
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.0552], ["candidate_duration", 0.04962689921783691], ["speedup_factor", 1.1123], ["time_delta", 0.005573100782163089], ["id", 4]]
1080
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1081
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 4], ["LIMIT", 1]]
1082
+  (0.0ms) SAVEPOINT active_record_1
1083
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0552], ["id", 7]]
1084
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1085
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 4], ["LIMIT", 1]]
1086
+  (0.0ms) SAVEPOINT active_record_1
1087
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.04962689921783691], ["id", 8]]
1088
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1089
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1090
+  (0.0ms) SAVEPOINT active_record_1
1091
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.0], ["created_at", "2019-08-22 20:52:06.015026"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 1.00000761449337e-06]]
1092
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.015705"]]
1093
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.016312"]]
1094
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1095
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1096
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1097
+  (0.0ms) SAVEPOINT active_record_1
1098
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.0539], ["candidate_duration", 0.045647018970189704], ["speedup_factor", 1.1808], ["time_delta", 0.0082529810298103], ["id", 5]]
1099
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1100
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 5], ["LIMIT", 1]]
1101
+  (0.0ms) SAVEPOINT active_record_1
1102
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0539], ["id", 9]]
1103
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1104
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 5], ["LIMIT", 1]]
1105
+  (0.0ms) SAVEPOINT active_record_1
1106
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.045647018970189704], ["id", 10]]
1107
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1108
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1109
+  (0.0ms) SAVEPOINT active_record_1
1110
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:06.022670"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.00000761449337e-06]]
1111
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 6], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.023547"]]
1112
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 6], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.024187"]]
1113
+ SQL (0.2ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1114
+  (0.1ms) RELEASE SAVEPOINT active_record_1
1115
+ LabTech::Result Load (0.2ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1116
+  (0.1ms) SAVEPOINT active_record_1
1117
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.0554], ["candidate_duration", 0.06243026], ["speedup_factor", -1.1269], ["time_delta", -0.0070302600000000035], ["id", 6]]
1118
+  (0.1ms) RELEASE SAVEPOINT active_record_1
1119
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 6], ["LIMIT", 1]]
1120
+  (0.0ms) SAVEPOINT active_record_1
1121
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0554], ["id", 11]]
1122
+  (0.1ms) RELEASE SAVEPOINT active_record_1
1123
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 6], ["LIMIT", 1]]
1124
+  (0.0ms) SAVEPOINT active_record_1
1125
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.06243026], ["id", 12]]
1126
+  (0.1ms) RELEASE SAVEPOINT active_record_1
1127
+ LabTech::Experiment Load (0.1ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
1128
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1129
+  (0.0ms) SAVEPOINT active_record_1
1130
+  (0.1ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1131
+  (0.1ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1132
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1133
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
1134
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
1135
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
1136
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
1137
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
1138
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1139
+  (0.3ms) rollback transaction
1140
+  (0.0ms) begin transaction
1141
+  (0.0ms) SAVEPOINT active_record_1
1142
+ SQL (0.4ms) INSERT INTO "lab_tech_experiments" ("name", "percent_enabled") VALUES (?, ?) [["name", "wibble"], ["percent_enabled", 100]]
1143
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1144
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1145
+  (0.0ms) SAVEPOINT active_record_1
1146
+ SQL (0.2ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:06.138604"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 0.0]]
1147
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.139605"]]
1148
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 1], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.140452"]]
1149
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1150
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1151
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1152
+  (0.0ms) SAVEPOINT active_record_1
1153
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.0030516], ["candidate_duration", 0.00306088], ["speedup_factor", -1.0030410276576223], ["time_delta", -9.280000000000399e-06], ["id", 1]]
1154
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1155
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 1], ["LIMIT", 1]]
1156
+  (0.0ms) SAVEPOINT active_record_1
1157
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0030516], ["id", 1]]
1158
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1159
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 1], ["LIMIT", 1]]
1160
+  (0.0ms) SAVEPOINT active_record_1
1161
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00306088], ["id", 2]]
1162
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1163
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1164
+  (0.0ms) SAVEPOINT active_record_1
1165
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["speedup_factor", 2.000029104455892], ["created_at", "2019-08-22 20:52:06.148044"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 9.999785106629133e-07]]
1166
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.148904"]]
1167
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 2], ["name", "candidate"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.149669"]]
1168
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1169
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1170
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1171
+  (0.1ms) SAVEPOINT active_record_1
1172
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000261548], ["candidate_duration", 0.00220928], ["speedup_factor", -8.446938993989631], ["time_delta", -0.0019477320000000002], ["id", 2]]
1173
+  (0.1ms) RELEASE SAVEPOINT active_record_1
1174
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 2], ["LIMIT", 1]]
1175
+  (0.0ms) SAVEPOINT active_record_1
1176
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000261548], ["id", 3]]
1177
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1178
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 2], ["LIMIT", 1]]
1179
+  (0.0ms) SAVEPOINT active_record_1
1180
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00220928], ["id", 4]]
1181
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1182
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1183
+  (0.0ms) SAVEPOINT active_record_1
1184
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.00000761449337e-06], ["speedup_factor", -2.000029104455892], ["created_at", "2019-08-22 20:52:06.157834"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 1.9999861251562834e-06]]
1185
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.158662"]]
1186
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 3], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.159383"]]
1187
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1188
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1189
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1190
+  (0.0ms) SAVEPOINT active_record_1
1191
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000781327], ["candidate_duration", 0.00279742], ["speedup_factor", -3.5803447212242765], ["time_delta", -0.002016093], ["id", 3]]
1192
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1193
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 3], ["LIMIT", 1]]
1194
+  (0.0ms) SAVEPOINT active_record_1
1195
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000781327], ["id", 5]]
1196
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1197
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 3], ["LIMIT", 1]]
1198
+  (0.0ms) SAVEPOINT active_record_1
1199
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00279742], ["id", 6]]
1200
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1201
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1202
+  (0.0ms) SAVEPOINT active_record_1
1203
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.0000367183238268e-06], ["speedup_factor", -2.0000582089117844], ["created_at", "2019-08-22 20:52:06.166061"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 2.00001522898674e-06]]
1204
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.166858"]]
1205
+ SQL (0.2ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 4], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.167570"]]
1206
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1207
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1208
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1209
+  (0.0ms) SAVEPOINT active_record_1
1210
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00201508], ["candidate_duration", 0.002386], ["speedup_factor", -1.1840720963931954], ["time_delta", -0.0003709200000000003], ["id", 4]]
1211
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1212
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 4], ["LIMIT", 1]]
1213
+  (0.0ms) SAVEPOINT active_record_1
1214
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00201508], ["id", 7]]
1215
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1216
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 4], ["LIMIT", 1]]
1217
+  (0.0ms) SAVEPOINT active_record_1
1218
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.002386], ["id", 8]]
1219
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1220
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1221
+  (0.0ms) SAVEPOINT active_record_1
1222
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 2.00001522898674e-06], ["created_at", "2019-08-22 20:52:06.176122"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 0.0]]
1223
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.176956"]]
1224
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 5], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.177774"]]
1225
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1226
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1227
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1228
+  (0.0ms) SAVEPOINT active_record_1
1229
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000593603], ["candidate_duration", 0.00275979], ["speedup_factor", -4.6492184170228255], ["time_delta", -0.002166187], ["id", 5]]
1230
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1231
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 5], ["LIMIT", 1]]
1232
+  (0.0ms) SAVEPOINT active_record_1
1233
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000593603], ["id", 9]]
1234
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1235
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 5], ["LIMIT", 1]]
1236
+  (0.0ms) SAVEPOINT active_record_1
1237
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00275979], ["id", 10]]
1238
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1239
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1240
+  (0.0ms) SAVEPOINT active_record_1
1241
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:06.184648"], ["control_duration", 0.0], ["candidate_duration", 1.9999861251562834e-06]]
1242
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 6], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.185457"]]
1243
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 6], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.186225"]]
1244
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1245
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1246
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1247
+  (0.0ms) SAVEPOINT active_record_1
1248
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000259521], ["candidate_duration", 0.0021131], ["speedup_factor", -8.142308329576412], ["time_delta", -0.0018535790000000002], ["id", 6]]
1249
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1250
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 6], ["LIMIT", 1]]
1251
+  (0.0ms) SAVEPOINT active_record_1
1252
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000259521], ["id", 11]]
1253
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1254
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 6], ["LIMIT", 1]]
1255
+  (0.0ms) SAVEPOINT active_record_1
1256
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.0021131], ["id", 12]]
1257
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1258
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1259
+  (0.0ms) SAVEPOINT active_record_1
1260
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.0000367183238268e-06], ["speedup_factor", 2.0000582089117844], ["created_at", "2019-08-22 20:52:06.192646"], ["control_duration", 2.00001522898674e-06], ["candidate_duration", 9.999785106629133e-07]]
1261
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 7], ["name", "control"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.193384"]]
1262
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 7], ["name", "candidate"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.194046"]]
1263
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1264
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1265
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1266
+  (0.0ms) SAVEPOINT active_record_1
1267
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000673067], ["candidate_duration", 0.00250636], ["speedup_factor", -3.7237897564432667], ["time_delta", -0.0018332930000000002], ["id", 7]]
1268
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1269
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 7], ["LIMIT", 1]]
1270
+  (0.0ms) SAVEPOINT active_record_1
1271
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000673067], ["id", 13]]
1272
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1273
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 7], ["LIMIT", 1]]
1274
+  (0.0ms) SAVEPOINT active_record_1
1275
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00250636], ["id", 14]]
1276
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1277
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1278
+  (0.0ms) SAVEPOINT active_record_1
1279
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["created_at", "2019-08-22 20:52:06.199941"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 0.0]]
1280
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 8], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.200870"]]
1281
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 8], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.201583"]]
1282
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1283
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1284
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1285
+  (0.0ms) SAVEPOINT active_record_1
1286
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00229586], ["candidate_duration", 0.00285059], ["speedup_factor", -1.2416218758983564], ["time_delta", -0.0005547300000000002], ["id", 8]]
1287
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1288
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 8], ["LIMIT", 1]]
1289
+  (0.0ms) SAVEPOINT active_record_1
1290
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00229586], ["id", 15]]
1291
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1292
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 8], ["LIMIT", 1]]
1293
+  (0.0ms) SAVEPOINT active_record_1
1294
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00285059], ["id", 16]]
1295
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1296
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1297
+  (0.0ms) SAVEPOINT active_record_1
1298
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -9.999785106629133e-07], ["speedup_factor", -1.9999708963911524], ["created_at", "2019-08-22 20:52:06.207716"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.9999861251562834e-06]]
1299
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 9], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.208413"]]
1300
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 9], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.209029"]]
1301
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1302
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1303
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1304
+  (0.0ms) SAVEPOINT active_record_1
1305
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.002911], ["candidate_duration", 0.00275513], ["speedup_factor", 1.0565744629110059], ["time_delta", 0.0001558699999999998], ["id", 9]]
1306
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1307
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 9], ["LIMIT", 1]]
1308
+  (0.0ms) SAVEPOINT active_record_1
1309
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.002911], ["id", 17]]
1310
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1311
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 9], ["LIMIT", 1]]
1312
+  (0.0ms) SAVEPOINT active_record_1
1313
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00275513], ["id", 18]]
1314
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1315
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1316
+  (0.0ms) SAVEPOINT active_record_1
1317
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -9.999785106629133e-07], ["speedup_factor", -1.9999708963911524], ["created_at", "2019-08-22 20:52:06.214911"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.9999861251562834e-06]]
1318
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 10], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.215594"]]
1319
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 10], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.216206"]]
1320
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1321
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1322
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1323
+  (0.0ms) SAVEPOINT active_record_1
1324
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00275274], ["candidate_duration", 0.00251802], ["speedup_factor", 1.0932160983629995], ["time_delta", 0.0002347199999999999], ["id", 10]]
1325
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1326
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 10], ["LIMIT", 1]]
1327
+  (0.0ms) SAVEPOINT active_record_1
1328
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00275274], ["id", 19]]
1329
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1330
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 10], ["LIMIT", 1]]
1331
+  (0.0ms) SAVEPOINT active_record_1
1332
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00251802], ["id", 20]]
1333
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1334
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1335
+  (0.0ms) SAVEPOINT active_record_1
1336
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.0000367183238268e-06], ["speedup_factor", -2.0000582089117844], ["created_at", "2019-08-22 20:52:06.222437"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 2.00001522898674e-06]]
1337
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 11], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.223132"]]
1338
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 11], ["name", "candidate"], ["duration", 2.00001522898674e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.223736"]]
1339
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1340
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1341
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1342
+  (0.0ms) SAVEPOINT active_record_1
1343
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000236285], ["candidate_duration", 0.00198174], ["speedup_factor", -8.387074930698098], ["time_delta", -0.0017454550000000001], ["id", 11]]
1344
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1345
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 11], ["LIMIT", 1]]
1346
+  (0.0ms) SAVEPOINT active_record_1
1347
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000236285], ["id", 21]]
1348
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1349
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 11], ["LIMIT", 1]]
1350
+  (0.0ms) SAVEPOINT active_record_1
1351
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00198174], ["id", 22]]
1352
+  (0.1ms) RELEASE SAVEPOINT active_record_1
1353
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1354
+  (0.0ms) SAVEPOINT active_record_1
1355
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 9.999785106629133e-07], ["speedup_factor", 1.9999708963911524], ["created_at", "2019-08-22 20:52:06.229419"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 1.00000761449337e-06]]
1356
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 12], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.230177"]]
1357
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 12], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.230798"]]
1358
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1359
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1360
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1361
+  (0.0ms) SAVEPOINT active_record_1
1362
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000225291], ["candidate_duration", 0.00257419], ["speedup_factor", -11.426066731471742], ["time_delta", -0.002348899], ["id", 12]]
1363
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1364
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 12], ["LIMIT", 1]]
1365
+  (0.0ms) SAVEPOINT active_record_1
1366
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000225291], ["id", 23]]
1367
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1368
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 12], ["LIMIT", 1]]
1369
+  (0.0ms) SAVEPOINT active_record_1
1370
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00257419], ["id", 24]]
1371
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1372
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1373
+  (0.0ms) SAVEPOINT active_record_1
1374
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -9.999785106629133e-07], ["created_at", "2019-08-22 20:52:06.237052"], ["control_duration", 0.0], ["candidate_duration", 9.999785106629133e-07]]
1375
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 13], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.237780"]]
1376
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 13], ["name", "candidate"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.238387"]]
1377
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1378
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1379
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1380
+  (0.0ms) SAVEPOINT active_record_1
1381
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000356831], ["candidate_duration", 0.00244557], ["speedup_factor", -6.853580546533234], ["time_delta", -0.002088739], ["id", 13]]
1382
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1383
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 13], ["LIMIT", 1]]
1384
+  (0.0ms) SAVEPOINT active_record_1
1385
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000356831], ["id", 25]]
1386
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1387
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 13], ["LIMIT", 1]]
1388
+  (0.0ms) SAVEPOINT active_record_1
1389
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00244557], ["id", 26]]
1390
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1391
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1392
+  (0.0ms) SAVEPOINT active_record_1
1393
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["created_at", "2019-08-22 20:52:06.250851"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 0.0]]
1394
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 14], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.251588"]]
1395
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 14], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.252553"]]
1396
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1397
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1398
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1399
+  (0.0ms) SAVEPOINT active_record_1
1400
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000287118], ["candidate_duration", 0.00248476], ["speedup_factor", -8.654142199374473], ["time_delta", -0.002197642], ["id", 14]]
1401
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1402
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 14], ["LIMIT", 1]]
1403
+  (0.0ms) SAVEPOINT active_record_1
1404
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000287118], ["id", 27]]
1405
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1406
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 14], ["LIMIT", 1]]
1407
+  (0.0ms) SAVEPOINT active_record_1
1408
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00248476], ["id", 28]]
1409
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1410
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1411
+  (0.0ms) SAVEPOINT active_record_1
1412
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 0.0], ["speedup_factor", 0.0], ["created_at", "2019-08-22 20:52:06.258421"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 1.00000761449337e-06]]
1413
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 15], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.259111"]]
1414
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 15], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.259717"]]
1415
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1416
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1417
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1418
+  (0.0ms) SAVEPOINT active_record_1
1419
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.000556486], ["candidate_duration", 0.00261352], ["speedup_factor", -4.696470351455382], ["time_delta", -0.0020570339999999997], ["id", 15]]
1420
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1421
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 15], ["LIMIT", 1]]
1422
+  (0.0ms) SAVEPOINT active_record_1
1423
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.000556486], ["id", 29]]
1424
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1425
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 15], ["LIMIT", 1]]
1426
+  (0.0ms) SAVEPOINT active_record_1
1427
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00261352], ["id", 30]]
1428
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1429
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1430
+  (0.0ms) SAVEPOINT active_record_1
1431
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 1.00000761449337e-06], ["created_at", "2019-08-22 20:52:06.265538"], ["control_duration", 1.00000761449337e-06], ["candidate_duration", 0.0]]
1432
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 16], ["name", "control"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.266196"]]
1433
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 16], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.266784"]]
1434
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1435
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1436
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1437
+  (0.0ms) SAVEPOINT active_record_1
1438
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00237066], ["candidate_duration", 0.00265087], ["speedup_factor", -1.1181991512912015], ["time_delta", -0.0002802099999999999], ["id", 16]]
1439
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1440
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 16], ["LIMIT", 1]]
1441
+  (0.0ms) SAVEPOINT active_record_1
1442
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00237066], ["id", 31]]
1443
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1444
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 16], ["LIMIT", 1]]
1445
+  (0.0ms) SAVEPOINT active_record_1
1446
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00265087], ["id", 32]]
1447
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1448
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1449
+  (0.0ms) SAVEPOINT active_record_1
1450
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", -1.9999861251562834e-06], ["created_at", "2019-08-22 20:52:06.272956"], ["control_duration", 0.0], ["candidate_duration", 1.9999861251562834e-06]]
1451
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 17], ["name", "control"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.273643"]]
1452
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 17], ["name", "candidate"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.274234"]]
1453
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1454
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1455
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1456
+  (0.0ms) SAVEPOINT active_record_1
1457
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00183386], ["candidate_duration", 0.00211302], ["speedup_factor", -1.1522253607145585], ["time_delta", -0.0002791600000000001], ["id", 17]]
1458
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1459
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 17], ["LIMIT", 1]]
1460
+  (0.0ms) SAVEPOINT active_record_1
1461
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00183386], ["id", 33]]
1462
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1463
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 17], ["LIMIT", 1]]
1464
+  (0.0ms) SAVEPOINT active_record_1
1465
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00211302], ["id", 34]]
1466
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1467
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1468
+  (0.0ms) SAVEPOINT active_record_1
1469
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 9.999785106629133e-07], ["created_at", "2019-08-22 20:52:06.279711"], ["control_duration", 9.999785106629133e-07], ["candidate_duration", 0.0]]
1470
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 18], ["name", "control"], ["duration", 9.999785106629133e-07], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.280358"]]
1471
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 18], ["name", "candidate"], ["duration", 0.0], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.280951"]]
1472
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1473
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1474
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1475
+  (0.0ms) SAVEPOINT active_record_1
1476
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00296087], ["candidate_duration", 0.00294441], ["speedup_factor", 1.0055902540746702], ["time_delta", 1.6459999999999825e-05], ["id", 18]]
1477
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1478
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 18], ["LIMIT", 1]]
1479
+  (0.0ms) SAVEPOINT active_record_1
1480
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00296087], ["id", 35]]
1481
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1482
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 18], ["LIMIT", 1]]
1483
+  (0.0ms) SAVEPOINT active_record_1
1484
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00294441], ["id", 36]]
1485
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1486
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."name" = ? LIMIT ? [["name", "wibble"], ["LIMIT", 1]]
1487
+  (0.0ms) SAVEPOINT active_record_1
1488
+ SQL (0.1ms) INSERT INTO "lab_tech_results" ("experiment_id", "context", "equivalent", "time_delta", "speedup_factor", "created_at", "control_duration", "candidate_duration") VALUES (?, ?, ?, ?, ?, ?, ?, ?) [["experiment_id", 1], ["context", "--- {}\n"], ["equivalent", "t"], ["time_delta", 9.999785106629133e-07], ["speedup_factor", 1.9999708963911524], ["created_at", "2019-08-22 20:52:06.286708"], ["control_duration", 1.9999861251562834e-06], ["candidate_duration", 1.00000761449337e-06]]
1489
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 19], ["name", "control"], ["duration", 1.9999861251562834e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.287489"]]
1490
+ SQL (0.1ms) INSERT INTO "lab_tech_observations" ("result_id", "name", "duration", "value", "created_at") VALUES (?, ?, ?, ?, ?) [["result_id", 19], ["name", "candidate"], ["duration", 1.00000761449337e-06], ["value", "--- foo\n"], ["created_at", "2019-08-22 20:52:06.288114"]]
1491
+ SQL (0.1ms) UPDATE "lab_tech_experiments" SET "equivalent_count" = COALESCE("equivalent_count", 0) + 1 WHERE "lab_tech_experiments"."id" = ? [["id", 1]]
1492
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1493
+ LabTech::Result Load (0.1ms) SELECT "lab_tech_results".* FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? ORDER BY "lab_tech_results"."id" DESC LIMIT ? [["experiment_id", 1], ["LIMIT", 1]]
1494
+  (0.0ms) SAVEPOINT active_record_1
1495
+ SQL (0.1ms) UPDATE "lab_tech_results" SET "control_duration" = ?, "candidate_duration" = ?, "speedup_factor" = ?, "time_delta" = ? WHERE "lab_tech_results"."id" = ? [["control_duration", 0.00031988], ["candidate_duration", 0.00323599], ["speedup_factor", -10.116262348380642], ["time_delta", -0.00291611], ["id", 19]]
1496
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1497
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name = 'control') LIMIT ? [["result_id", 19], ["LIMIT", 1]]
1498
+  (0.0ms) SAVEPOINT active_record_1
1499
+ SQL (0.0ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00031988], ["id", 37]]
1500
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1501
+ LabTech::Observation Load (0.1ms) SELECT "lab_tech_observations".* FROM "lab_tech_observations" WHERE "lab_tech_observations"."result_id" = ? AND (name != 'control') ORDER BY "lab_tech_observations"."id" ASC LIMIT ? [["result_id", 19], ["LIMIT", 1]]
1502
+  (0.0ms) SAVEPOINT active_record_1
1503
+ SQL (0.1ms) UPDATE "lab_tech_observations" SET "duration" = ? WHERE "lab_tech_observations"."id" = ? [["duration", 0.00323599], ["id", 38]]
1504
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1505
+ LabTech::Experiment Load (0.0ms) SELECT "lab_tech_experiments".* FROM "lab_tech_experiments" WHERE "lab_tech_experiments"."id" = ? LIMIT ? [["id", 1], ["LIMIT", 1]]
1506
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1507
+  (0.0ms) SAVEPOINT active_record_1
1508
+  (0.0ms) SELECT MIN("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1509
+  (0.0ms) SELECT MAX("lab_tech_results"."created_at") FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1510
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? [["experiment_id", 1]]
1511
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
1512
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "f"]]
1513
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class = "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
1514
+  (0.1ms) SELECT COUNT(*) FROM "lab_tech_results" INNER JOIN "lab_tech_observations" ON "lab_tech_observations"."result_id" = "lab_tech_results"."id" AND (name != 'control') WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? AND (lab_tech_observations.exception_class != "Timeout::Error") [["experiment_id", 1], ["equivalent", "f"], ["raised_error", "t"]]
1515
+  (0.0ms) SELECT "lab_tech_results"."time_delta", "lab_tech_results"."speedup_factor" FROM "lab_tech_results" WHERE "lab_tech_results"."experiment_id" = ? AND "lab_tech_results"."equivalent" = ? AND "lab_tech_results"."raised_error" = ? [["experiment_id", 1], ["equivalent", "t"], ["raised_error", "f"]]
1516
+  (0.0ms) RELEASE SAVEPOINT active_record_1
1517
+  (0.7ms) rollback transaction
1518
+  (0.0ms) begin transaction
1519
+  (0.0ms) rollback transaction