switchman 1.2.35 → 1.2.36

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (89) hide show
  1. checksums.yaml +4 -4
  2. data/app/models/switchman/shard.rb +20 -11
  3. data/lib/switchman/active_record/attribute_methods.rb +16 -0
  4. data/lib/switchman/active_record/calculations.rb +12 -4
  5. data/lib/switchman/active_record/log_subscriber.rb +1 -1
  6. data/lib/switchman/active_record/postgresql_adapter.rb +24 -0
  7. data/lib/switchman/active_record/query_methods.rb +10 -8
  8. data/lib/switchman/active_record/spawn_methods.rb +1 -1
  9. data/lib/switchman/arel.rb +13 -0
  10. data/lib/switchman/engine.rb +3 -0
  11. data/lib/switchman/sharded_instrumenter.rb +1 -0
  12. data/lib/switchman/version.rb +1 -1
  13. data/spec/dummy/db/migrate/20150618035859_add_dummy_foreign_key.rb +5 -0
  14. data/spec/dummy/db/schema.rb +2 -1
  15. data/spec/dummy/db/shard_143.sqlite3 +0 -0
  16. data/spec/dummy/db/shard_170.sqlite3 +0 -0
  17. data/spec/dummy/db/shard_191.sqlite3 +0 -0
  18. data/spec/dummy/db/shard_206.sqlite3 +0 -0
  19. data/spec/dummy/db/shard_235.sqlite3 +0 -0
  20. data/spec/dummy/db/shard_248.sqlite3 +0 -0
  21. data/spec/dummy/db/shard_270.sqlite3 +0 -0
  22. data/spec/dummy/db/shard_304.sqlite3 +0 -0
  23. data/spec/dummy/db/shard_333.sqlite3 +0 -0
  24. data/spec/dummy/db/shard_347.sqlite3 +0 -0
  25. data/spec/dummy/db/shard_385.sqlite3 +0 -0
  26. data/spec/dummy/db/shard_405.sqlite3 +0 -0
  27. data/spec/dummy/db/shard_427.sqlite3 +0 -0
  28. data/spec/dummy/db/shard_441.sqlite3 +0 -0
  29. data/spec/dummy/log/development.log +2 -0
  30. data/spec/dummy/log/test.log +50383 -0
  31. data/spec/dummy/tmp/cache/344/DB0/shard%2F220 +0 -0
  32. data/spec/dummy/tmp/cache/345/DC0/shard%2F221 +0 -0
  33. data/spec/dummy/tmp/cache/346/{DF0/shard%2F321 → DE0/shard%2F231} +1 -1
  34. data/spec/dummy/tmp/cache/{34C/E80/shard%2F273 → 347/DE0/shard%2F142} +1 -1
  35. data/spec/dummy/tmp/cache/347/DF0/shard%2F151 +1 -0
  36. data/spec/dummy/tmp/cache/348/E30/shard%2F422 +1 -0
  37. data/spec/dummy/tmp/cache/349/E20/shard%2F243 +0 -0
  38. data/spec/dummy/tmp/cache/349/E40/shard%2F423 +1 -0
  39. data/spec/dummy/tmp/cache/34A/E00/shard%2F217 +1 -0
  40. data/spec/dummy/tmp/cache/34A/E20/shard%2F316 +1 -0
  41. data/spec/dummy/tmp/cache/34A/E30/shard%2F244 +0 -0
  42. data/spec/dummy/tmp/cache/{34C/E90/shard%2F444 → 34A/E30/shard%2F325} +1 -1
  43. data/spec/dummy/tmp/cache/34B/E40/shard%2F245 +0 -0
  44. data/spec/dummy/tmp/cache/34B/E60/shard%2F344 +1 -0
  45. data/spec/dummy/tmp/cache/34B/E70/shard%2F434 +1 -0
  46. data/spec/dummy/tmp/cache/34C/E40/shard%2F156 +1 -0
  47. data/spec/dummy/tmp/cache/34C/E80/shard%2F354 +1 -0
  48. data/spec/dummy/tmp/cache/34C/EA0/shard%2F453 +1 -0
  49. data/spec/dummy/tmp/cache/34D/E60/shard%2F409 +1 -0
  50. data/spec/dummy/tmp/cache/34D/EC0/shard%2F382 +1 -0
  51. data/spec/dummy/tmp/cache/34E/EA0/shard%2F437 +1 -0
  52. data/spec/dummy/tmp/cache/34F/EB0/shard%2F438 +1 -0
  53. data/spec/dummy/tmp/cache/34F/EC0/shard%2F285 +1 -0
  54. data/spec/dummy/tmp/cache/351/EC0/shard%2F188 +1 -0
  55. data/spec/dummy/tmp/cache/351/EE0/shard%2F368 +1 -0
  56. data/spec/dummy/tmp/cache/352/EF0/shard%2F369 +1 -0
  57. data/spec/dummy/tmp/cache/{34A/E40/shard%2F172 → 3A6/F10/shard%2F10221} +1 -1
  58. data/spec/dummy/tmp/cache/3A8/F50/shard%2F10322 +1 -0
  59. data/spec/dummy/tmp/cache/3A9/F50/shard%2F10152 +1 -0
  60. data/spec/dummy/tmp/cache/3AA/F90/shard%2F10423 +1 -0
  61. data/spec/dummy/tmp/cache/3AB/F80/shard%2F10244 +1 -0
  62. data/spec/dummy/tmp/cache/3AC/F60/shard%2F10137 +1 -0
  63. data/spec/dummy/tmp/cache/3AD/FC0/shard%2F10345 +1 -0
  64. data/spec/dummy/tmp/cache/3AE/FC0/shard%2F10175 +1 -0
  65. data/spec/dummy/tmp/cache/3AF/030/shard%2F10392 +1 -0
  66. data/spec/dummy/tmp/cache/3B0/000/shard%2F10438 +1 -0
  67. data/spec/dummy/tmp/cache/3B0/FF0/shard%2F10267 +1 -0
  68. data/spec/dummy/tmp/cache/3B3/030/shard%2F10198 +1 -0
  69. data/spec/dummy/tmp/cache/3B3/040/shard%2F10369 +1 -0
  70. data/spec/dummy/tmp/cache/3B5/070/shard%2F10299 +1 -0
  71. data/spec/lib/active_record/association_spec.rb +1 -1
  72. data/spec/lib/active_record/attribute_methods_spec.rb +8 -0
  73. data/spec/lib/active_record/calculations_spec.rb +16 -1
  74. data/spec/lib/active_record/postgresql_adapter_spec.rb +31 -0
  75. data/spec/lib/active_record/query_methods_spec.rb +1 -1
  76. data/spec/models/shard_spec.rb +12 -0
  77. metadata +112 -35
  78. data/spec/dummy/tmp/cache/349/E10/shard%2F153 +0 -0
  79. data/spec/dummy/tmp/cache/34A/E20/shard%2F154 +0 -0
  80. data/spec/dummy/tmp/cache/34C/E50/shard%2F246 +0 -0
  81. data/spec/dummy/tmp/cache/34C/E90/shard%2F363 +0 -0
  82. data/spec/dummy/tmp/cache/34D/E80/shard%2F265 +0 -1
  83. data/spec/dummy/tmp/cache/34D/ED0/shard%2F391 +0 -1
  84. data/spec/dummy/tmp/cache/34E/ED0/shard%2F383 +0 -1
  85. data/spec/dummy/tmp/cache/350/EA0/shard%2F178 +0 -1
  86. data/spec/dummy/tmp/cache/350/EB0/shard%2F349 +0 -1
  87. data/spec/dummy/tmp/cache/351/F00/shard%2F386 +0 -0
  88. data/spec/dummy/tmp/cache/352/F10/shard%2F387 +0 -0
  89. data/spec/dummy/tmp/cache/353/F10/shard%2F298 +0 -1
@@ -1 +1 @@
1
- o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1406054473.924482: @value" :nil
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432743298.325543: @value" :nil
@@ -1 +1 @@
1
- o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1406054155.994775: @value" :nil
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432743218.310255: @value" :nil
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETi�I" name;TI"switchman_test_shard_151;TI"database_server_id;TI" test;TI" default;TF:@created_atf1432743241.224942:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETi�I" name;TI"switchman_test_shard_422;TI"database_server_id;TI" test;TI" default;TF:@created_atf1434600421.177919:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETi�I" name;TI"switchman_test_shard_423;TI"database_server_id;TI"8;TI" default;TF:@created_atf1434600421.297057:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432743281.072372:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432744899.045677:@expires_in0
@@ -1 +1 @@
1
- o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1406056246.029251: @value" :nil
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432744915.643306: @value" :nil
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETiXI" name;TI"switchman_test_shard_344;TI"database_server_id;TI" test;TI" default;TF:@created_atf1432744936.494325:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434600421.38671:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432743239.162176:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432744934.7882082:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434657675.965363:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434600400.1170712:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434600218.762808:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETi�I" name;TI"switchman_test_shard_437;TI"database_server_id;TI" test;TI" default;TF:@created_atf1434657677.081901:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETi�I" name;TI"switchman_test_shard_438;TI"database_server_id;TI"1;TI" default;TF:@created_atf1434657677.0562189:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432744675.2165859:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432743267.37587:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETipI" name;TI"switchman_test_shard_368;TI"database_server_id;TI" test;TI" default;TF:@created_atf1434600220.66825:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value{ I"id:ETiqI" name;TI"switchman_test_shard_369;TI"database_server_id;TI"1;TI" default;TF:@created_atf1434600220.671426:@expires_in0
@@ -1 +1 @@
1
- o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1405710383.000582: @value" :nil
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432743298.256653: @value" :nil
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432744915.6877282: @value" :nil
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432743239.345477:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434600421.3065448:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432743419.2790852: @value" :nil
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry :@compressedF:@expires_in0:@created_atf1432743218.110343: @value" :nil
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432744934.661105:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432743267.312521:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434600400.169792:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434657675.895245:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432744674.990277:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432743280.818039:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1434600218.564448:@expires_in0
@@ -0,0 +1 @@
1
+ o: ActiveSupport::Cache::Entry: @value:nil:@created_atf1432744899.156862:@expires_in0
@@ -149,7 +149,7 @@ module Switchman
149
149
  if ::Rails.version < '4'
150
150
  expect(relation.where_values.first.right).to eq mirror_user.global_id
151
151
  else
152
- expect(relation.where_values.first.right).to be_a(Arel::Nodes::BindParam)
152
+ expect(relation.where_values.first.right).to be_a(::Arel::Nodes::BindParam)
153
153
  expect(relation.bind_values.map(&:last)).to eq [mirror_user.global_id]
154
154
  end
155
155
  end
@@ -108,6 +108,14 @@ module Switchman
108
108
  f = Feature.select(:owner_id).where(id: f).first
109
109
  f.owner_id
110
110
  end
111
+
112
+ it "gives a useful error if the association doesn't exist" do
113
+ u = User.new
114
+ expect { u.global_broken_id }.to raise_error do |error|
115
+ expect(error).to be_a(NoMethodError)
116
+ expect(error.to_s).to eq "undefined method `global_broken_id'; are you missing an association?"
117
+ end
118
+ end
111
119
  end
112
120
  end
113
121
  end
@@ -49,7 +49,22 @@ module Switchman
49
49
 
50
50
  it "should post-uniq multi-shard" do
51
51
  user3 = User.create!(name: 'user2')
52
- expect(User.where(id: [@user1.id, @user2.id, user3.id]).uniq.pluck(:name).sort).to eq ["user1", "user2"]
52
+ expect(User.where(id: [@user1.id, @user2.id, user3.id]).uniq.pluck(:name).sort).to match_array ["user1", "user2"]
53
+ end
54
+
55
+ it "should work with multi-column plucking" do
56
+ skip "Rails 4 specific" if ::Rails.version < '4'
57
+
58
+ expect(Appendage.where(:id => @appendage1).pluck(:id, :user_id)).to eq [[@appendage1.global_id, @user1.global_id]]
59
+ expect(Appendage.where(:id => @appendage2).pluck(:id, :user_id)).to eq [[@appendage2.global_id, @user2.global_id]]
60
+ @shard1.activate do
61
+ expect(Appendage.where(:id => @appendage1).pluck(:id, :user_id)).to eq [[@appendage1.local_id, @user1.local_id]]
62
+ expect(Appendage.where(:id => @appendage2).pluck(:id, :user_id)).to eq [[@appendage2.global_id, @user2.global_id]]
63
+ end
64
+ @shard2.activate do
65
+ expect(Appendage.where(:id => @appendage1).pluck(:id, :user_id)).to eq [[@appendage1.global_id, @user1.global_id]]
66
+ expect(Appendage.where(:id => @appendage2).pluck(:id, :user_id)).to eq [[@appendage2.local_id, @user2.local_id]]
67
+ end
53
68
  end
54
69
  end
55
70
 
@@ -0,0 +1,31 @@
1
+ require "spec_helper"
2
+
3
+ module Switchman
4
+ module ActiveRecord
5
+ describe PostgreSQLAdapter do
6
+ describe '#quote_table_name' do
7
+ before do
8
+ skip "requires PostgreSQL" unless ::ActiveRecord::Base.connection.adapter_name == 'PostgreSQL'
9
+ @config = ::ActiveRecord::Base.connection.instance_variable_get(:@config)
10
+ @prior_use_qualified_names = @config[:use_qualified_names]
11
+ @config[:use_qualified_names] = true
12
+ shard = mock()
13
+ shard.stubs(:name).returns('bob')
14
+ ::ActiveRecord::Base.connection.stubs(:shard).returns(shard)
15
+ end
16
+
17
+ after do
18
+ @config[:use_qualified_names] = @prior_use_qualified_names
19
+ end
20
+
21
+ it 'should add schema if not included' do
22
+ expect(::ActiveRecord::Base.connection.quote_table_name('table')).to eq '"bob"."table"'
23
+ end
24
+
25
+ it 'should not add schema if already included' do
26
+ expect(::ActiveRecord::Base.connection.quote_table_name('schema.table')).to eq '"schema"."table"'
27
+ end
28
+ end
29
+ end
30
+ end
31
+ end
@@ -150,7 +150,7 @@ module Switchman
150
150
 
151
151
  attribute = relation.where_values.first.left
152
152
  expect(attribute.name.to_s).to eq 'parent_id'
153
- expect(attribute.relation.class).to eq Arel::Nodes::TableAlias
153
+ expect(attribute.relation.class).to eq ::Arel::Nodes::TableAlias
154
154
 
155
155
  rel, column = relation.send(:relation_and_column, attribute)
156
156
  expect(relation.send(:sharded_primary_key?, rel, column)).to eq false
@@ -127,6 +127,18 @@ module Switchman
127
127
  end
128
128
  end
129
129
 
130
+ it "orders explicit scopes without an explicit order" do
131
+ scope = Shard.where(id: Shard.default)
132
+ scope.expects(:order).once.returns(scope)
133
+ Shard.with_each_shard(scope) {}
134
+ end
135
+
136
+ it "does not order explicit scopes that already have an order" do
137
+ scope = Shard.order(:id)
138
+ scope.expects(:order).never
139
+ Shard.with_each_shard(scope) {}
140
+ end
141
+
130
142
  context "non-transactional" do
131
143
  self.use_transactional_fixtures = false
132
144
 
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: switchman
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.35
4
+ version: 1.2.36
5
5
  platform: ruby
6
6
  authors:
7
7
  - Cody Cutrer
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2015-05-18 00:00:00.000000000 Z
13
+ date: 2015-07-13 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: railties
@@ -165,6 +165,7 @@ files:
165
165
  - lib/switchman/active_record/relation.rb
166
166
  - lib/switchman/active_record/spawn_methods.rb
167
167
  - lib/switchman/active_support/cache.rb
168
+ - lib/switchman/arel.rb
168
169
  - lib/switchman/connection_pool_proxy.rb
169
170
  - lib/switchman/database_server.rb
170
171
  - lib/switchman/default_shard.rb
@@ -208,6 +209,7 @@ files:
208
209
  - spec/dummy/db/migrate/20131206172923_create_features.rb
209
210
  - spec/dummy/db/migrate/20140123154135_add_parent_id_to_users.rb
210
211
  - spec/dummy/db/migrate/20140219183820_create_roots.rb
212
+ - spec/dummy/db/migrate/20150618035859_add_dummy_foreign_key.rb
211
213
  - spec/dummy/db/schema.rb
212
214
  - spec/dummy/db/shard_101.sqlite3
213
215
  - spec/dummy/db/shard_1020.sqlite3
@@ -227,6 +229,7 @@ files:
227
229
  - spec/dummy/db/shard_1330.sqlite3
228
230
  - spec/dummy/db/shard_1361.sqlite3
229
231
  - spec/dummy/db/shard_1384.sqlite3
232
+ - spec/dummy/db/shard_143.sqlite3
230
233
  - spec/dummy/db/shard_1446.sqlite3
231
234
  - spec/dummy/db/shard_1481.sqlite3
232
235
  - spec/dummy/db/shard_1508.sqlite3
@@ -238,21 +241,34 @@ files:
238
241
  - spec/dummy/db/shard_1630.sqlite3
239
242
  - spec/dummy/db/shard_1652.sqlite3
240
243
  - spec/dummy/db/shard_1679.sqlite3
244
+ - spec/dummy/db/shard_170.sqlite3
241
245
  - spec/dummy/db/shard_1703.sqlite3
242
246
  - spec/dummy/db/shard_1721.sqlite3
243
247
  - spec/dummy/db/shard_1746.sqlite3
244
248
  - spec/dummy/db/shard_19.sqlite3
249
+ - spec/dummy/db/shard_191.sqlite3
245
250
  - spec/dummy/db/shard_193.sqlite3
251
+ - spec/dummy/db/shard_206.sqlite3
246
252
  - spec/dummy/db/shard_23.sqlite3
247
253
  - spec/dummy/db/shard_234.sqlite3
254
+ - spec/dummy/db/shard_235.sqlite3
255
+ - spec/dummy/db/shard_248.sqlite3
248
256
  - spec/dummy/db/shard_257.sqlite3
257
+ - spec/dummy/db/shard_270.sqlite3
249
258
  - spec/dummy/db/shard_277.sqlite3
259
+ - spec/dummy/db/shard_304.sqlite3
250
260
  - spec/dummy/db/shard_311.sqlite3
251
261
  - spec/dummy/db/shard_324.sqlite3
262
+ - spec/dummy/db/shard_333.sqlite3
252
263
  - spec/dummy/db/shard_342.sqlite3
264
+ - spec/dummy/db/shard_347.sqlite3
253
265
  - spec/dummy/db/shard_375.sqlite3
266
+ - spec/dummy/db/shard_385.sqlite3
254
267
  - spec/dummy/db/shard_389.sqlite3
268
+ - spec/dummy/db/shard_405.sqlite3
269
+ - spec/dummy/db/shard_427.sqlite3
255
270
  - spec/dummy/db/shard_428.sqlite3
271
+ - spec/dummy/db/shard_441.sqlite3
256
272
  - spec/dummy/db/shard_452.sqlite3
257
273
  - spec/dummy/db/shard_462.sqlite3
258
274
  - spec/dummy/db/shard_483.sqlite3
@@ -289,47 +305,55 @@ files:
289
305
  - spec/dummy/tmp/cache/31C/A10/shard%2F48
290
306
  - spec/dummy/tmp/cache/31C/A50/shard%2F84
291
307
  - spec/dummy/tmp/cache/344/D90/shard%2F121
308
+ - spec/dummy/tmp/cache/344/DB0/shard%2F220
309
+ - spec/dummy/tmp/cache/345/DC0/shard%2F221
292
310
  - spec/dummy/tmp/cache/345/E00/shard%2F500
293
- - spec/dummy/tmp/cache/346/DF0/shard%2F321
294
- - spec/dummy/tmp/cache/349/E10/shard%2F153
311
+ - spec/dummy/tmp/cache/346/DE0/shard%2F231
312
+ - spec/dummy/tmp/cache/347/DE0/shard%2F142
313
+ - spec/dummy/tmp/cache/347/DF0/shard%2F151
314
+ - spec/dummy/tmp/cache/348/E30/shard%2F422
295
315
  - spec/dummy/tmp/cache/349/E20/shard%2F243
296
- - spec/dummy/tmp/cache/34A/E20/shard%2F154
297
- - spec/dummy/tmp/cache/34A/E40/shard%2F172
316
+ - spec/dummy/tmp/cache/349/E40/shard%2F423
317
+ - spec/dummy/tmp/cache/34A/E00/shard%2F217
318
+ - spec/dummy/tmp/cache/34A/E20/shard%2F316
319
+ - spec/dummy/tmp/cache/34A/E30/shard%2F244
320
+ - spec/dummy/tmp/cache/34A/E30/shard%2F325
298
321
  - spec/dummy/tmp/cache/34A/E70/shard%2F523
299
322
  - spec/dummy/tmp/cache/34A/EB0/shard%2F721
300
323
  - spec/dummy/tmp/cache/34A/EC0/shard%2F730
301
324
  - spec/dummy/tmp/cache/34B/E40/shard%2F245
325
+ - spec/dummy/tmp/cache/34B/E60/shard%2F344
302
326
  - spec/dummy/tmp/cache/34B/E60/shard%2F425
327
+ - spec/dummy/tmp/cache/34B/E70/shard%2F434
303
328
  - spec/dummy/tmp/cache/34B/EC0/shard%2F722
304
- - spec/dummy/tmp/cache/34C/E50/shard%2F246
305
- - spec/dummy/tmp/cache/34C/E80/shard%2F273
306
- - spec/dummy/tmp/cache/34C/E90/shard%2F363
307
- - spec/dummy/tmp/cache/34C/E90/shard%2F444
329
+ - spec/dummy/tmp/cache/34C/E40/shard%2F156
330
+ - spec/dummy/tmp/cache/34C/E80/shard%2F354
331
+ - spec/dummy/tmp/cache/34C/EA0/shard%2F453
308
332
  - spec/dummy/tmp/cache/34C/EA0/shard%2F615
309
333
  - spec/dummy/tmp/cache/34C/F00/shard%2F750
310
- - spec/dummy/tmp/cache/34D/E80/shard%2F265
311
- - spec/dummy/tmp/cache/34D/ED0/shard%2F391
334
+ - spec/dummy/tmp/cache/34D/E60/shard%2F409
335
+ - spec/dummy/tmp/cache/34D/EC0/shard%2F382
312
336
  - spec/dummy/tmp/cache/34D/EE0/shard%2F724
313
- - spec/dummy/tmp/cache/34E/ED0/shard%2F383
337
+ - spec/dummy/tmp/cache/34E/EA0/shard%2F437
314
338
  - spec/dummy/tmp/cache/34E/EF0/shard%2F725
315
339
  - spec/dummy/tmp/cache/34E/F00/shard%2F653
340
+ - spec/dummy/tmp/cache/34F/EB0/shard%2F438
341
+ - spec/dummy/tmp/cache/34F/EC0/shard%2F285
316
342
  - spec/dummy/tmp/cache/34F/EE0/shard%2F546
317
343
  - spec/dummy/tmp/cache/34F/F00/shard%2F807
318
344
  - spec/dummy/tmp/cache/34F/F30/shard%2F672
319
- - spec/dummy/tmp/cache/350/EA0/shard%2F178
320
- - spec/dummy/tmp/cache/350/EB0/shard%2F349
321
345
  - spec/dummy/tmp/cache/350/F00/shard%2F718
322
346
  - spec/dummy/tmp/cache/350/F40/shard%2F592
323
347
  - spec/dummy/tmp/cache/350/F40/shard%2F916
324
- - spec/dummy/tmp/cache/351/F00/shard%2F386
348
+ - spec/dummy/tmp/cache/351/EC0/shard%2F188
349
+ - spec/dummy/tmp/cache/351/EE0/shard%2F368
325
350
  - spec/dummy/tmp/cache/351/F10/shard%2F638
326
351
  - spec/dummy/tmp/cache/351/F10/shard%2F719
327
352
  - spec/dummy/tmp/cache/351/F50/shard%2F917
328
353
  - spec/dummy/tmp/cache/351/F70/shard%2F935
329
- - spec/dummy/tmp/cache/352/F10/shard%2F387
354
+ - spec/dummy/tmp/cache/352/EF0/shard%2F369
330
355
  - spec/dummy/tmp/cache/352/F10/shard%2F468
331
356
  - spec/dummy/tmp/cache/352/F30/shard%2F729
332
- - spec/dummy/tmp/cache/353/F10/shard%2F298
333
357
  - spec/dummy/tmp/cache/353/F50/shard%2F739
334
358
  - spec/dummy/tmp/cache/354/F50/shard%2F569
335
359
  - spec/dummy/tmp/cache/354/F80/shard%2F677
@@ -402,19 +426,23 @@ files:
402
426
  - spec/dummy/tmp/cache/3A4/EA0/shard%2F10012
403
427
  - spec/dummy/tmp/cache/3A4/EE0/shard%2F11101
404
428
  - spec/dummy/tmp/cache/3A5/EA0/shard%2F10004
429
+ - spec/dummy/tmp/cache/3A6/F10/shard%2F10221
405
430
  - spec/dummy/tmp/cache/3A6/F40/shard%2F10410
406
431
  - spec/dummy/tmp/cache/3A7/F20/shard%2F10060
407
432
  - spec/dummy/tmp/cache/3A7/F20/shard%2F11032
408
433
  - spec/dummy/tmp/cache/3A7/F30/shard%2F10231
409
434
  - spec/dummy/tmp/cache/3A8/EF0/shard%2F10106
435
+ - spec/dummy/tmp/cache/3A8/F50/shard%2F10322
410
436
  - spec/dummy/tmp/cache/3A8/F70/shard%2F11312
411
437
  - spec/dummy/tmp/cache/3A8/F90/shard%2F10520
412
438
  - spec/dummy/tmp/cache/3A9/F40/shard%2F10062
439
+ - spec/dummy/tmp/cache/3A9/F50/shard%2F10152
413
440
  - spec/dummy/tmp/cache/3A9/F50/shard%2F11124
414
441
  - spec/dummy/tmp/cache/3A9/F80/shard%2F10341
415
442
  - spec/dummy/tmp/cache/3AA/F10/shard%2F10027
416
443
  - spec/dummy/tmp/cache/3AA/F10/shard%2F10108
417
444
  - spec/dummy/tmp/cache/3AA/F30/shard%2F10045
445
+ - spec/dummy/tmp/cache/3AA/F90/shard%2F10423
418
446
  - spec/dummy/tmp/cache/3AA/FB0/shard%2F10441
419
447
  - spec/dummy/tmp/cache/3AA/FB0/shard%2F11170
420
448
  - spec/dummy/tmp/cache/3AA/FC0/shard%2F10612
@@ -423,8 +451,10 @@ files:
423
451
  - spec/dummy/tmp/cache/3AB/010/shard%2F10730
424
452
  - spec/dummy/tmp/cache/3AB/F30/shard%2F11009
425
453
  - spec/dummy/tmp/cache/3AB/F70/shard%2F10154
454
+ - spec/dummy/tmp/cache/3AB/F80/shard%2F10244
426
455
  - spec/dummy/tmp/cache/3AB/FD0/shard%2F11342
427
456
  - spec/dummy/tmp/cache/3AC/020/shard%2F10650
457
+ - spec/dummy/tmp/cache/3AC/F60/shard%2F10137
428
458
  - spec/dummy/tmp/cache/3AC/F90/shard%2F10083
429
459
  - spec/dummy/tmp/cache/3AC/F90/shard%2F11055
430
460
  - spec/dummy/tmp/cache/3AC/FC0/shard%2F10272
@@ -433,21 +463,26 @@ files:
433
463
  - spec/dummy/tmp/cache/3AD/F50/shard%2F10039
434
464
  - spec/dummy/tmp/cache/3AD/F90/shard%2F10318
435
465
  - spec/dummy/tmp/cache/3AD/FA0/shard%2F10246
466
+ - spec/dummy/tmp/cache/3AD/FC0/shard%2F10345
436
467
  - spec/dummy/tmp/cache/3AE/060/shard%2F10751
437
468
  - spec/dummy/tmp/cache/3AE/060/shard%2F11480
438
469
  - spec/dummy/tmp/cache/3AE/090/shard%2F10940
470
+ - spec/dummy/tmp/cache/3AE/FC0/shard%2F10175
439
471
  - spec/dummy/tmp/cache/3AE/FD0/shard%2F11237
440
472
  - spec/dummy/tmp/cache/3AE/FF0/shard%2F10364
441
473
  - spec/dummy/tmp/cache/3AF/010/shard%2F11427
442
474
  - spec/dummy/tmp/cache/3AF/020/shard%2F11193
475
+ - spec/dummy/tmp/cache/3AF/030/shard%2F10392
443
476
  - spec/dummy/tmp/cache/3AF/030/shard%2F10635
444
477
  - spec/dummy/tmp/cache/3AF/030/shard%2F11283
445
478
  - spec/dummy/tmp/cache/3AF/030/shard%2F11526
479
+ - spec/dummy/tmp/cache/3B0/000/shard%2F10438
446
480
  - spec/dummy/tmp/cache/3B0/040/shard%2F11365
447
481
  - spec/dummy/tmp/cache/3B0/060/shard%2F11626
448
482
  - spec/dummy/tmp/cache/3B0/090/shard%2F11572
449
483
  - spec/dummy/tmp/cache/3B0/FE0/shard%2F10177
450
484
  - spec/dummy/tmp/cache/3B0/FE0/shard%2F11149
485
+ - spec/dummy/tmp/cache/3B0/FF0/shard%2F10267
451
486
  - spec/dummy/tmp/cache/3B1/000/shard%2F11078
452
487
  - spec/dummy/tmp/cache/3B1/030/shard%2F10295
453
488
  - spec/dummy/tmp/cache/3B1/040/shard%2F10466
@@ -456,10 +491,13 @@ files:
456
491
  - spec/dummy/tmp/cache/3B2/070/shard%2F10566
457
492
  - spec/dummy/tmp/cache/3B2/0A0/shard%2F10917
458
493
  - spec/dummy/tmp/cache/3B2/0D0/shard%2F11673
494
+ - spec/dummy/tmp/cache/3B3/030/shard%2F10198
495
+ - spec/dummy/tmp/cache/3B3/040/shard%2F10369
459
496
  - spec/dummy/tmp/cache/3B3/060/shard%2F10387
460
497
  - spec/dummy/tmp/cache/3B3/0A0/shard%2F11719
461
498
  - spec/dummy/tmp/cache/3B3/100/shard%2F10963
462
499
  - spec/dummy/tmp/cache/3B4/0A0/shard%2F11549
500
+ - spec/dummy/tmp/cache/3B5/070/shard%2F10299
463
501
  - spec/dummy/tmp/cache/3B5/0B0/shard%2F10497
464
502
  - spec/dummy/tmp/cache/3B5/100/shard%2F11595
465
503
  - spec/dummy/tmp/cache/3B6/100/shard%2F10696
@@ -477,6 +515,7 @@ files:
477
515
  - spec/lib/active_record/connection_pool_spec.rb
478
516
  - spec/lib/active_record/finder_methods_spec.rb
479
517
  - spec/lib/active_record/persistence_spec.rb
518
+ - spec/lib/active_record/postgresql_adapter_spec.rb
480
519
  - spec/lib/active_record/query_cache_spec.rb
481
520
  - spec/lib/active_record/query_methods_spec.rb
482
521
  - spec/lib/active_record/relation_spec.rb
@@ -511,7 +550,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
511
550
  version: '0'
512
551
  requirements: []
513
552
  rubyforge_project:
514
- rubygems_version: 2.4.5
553
+ rubygems_version: 2.4.7
515
554
  signing_key:
516
555
  specification_version: 4
517
556
  summary: Rails 3 sharding magic
@@ -546,6 +585,7 @@ test_files:
546
585
  - spec/dummy/db/migrate/20131206172923_create_features.rb
547
586
  - spec/dummy/db/migrate/20140123154135_add_parent_id_to_users.rb
548
587
  - spec/dummy/db/migrate/20140219183820_create_roots.rb
588
+ - spec/dummy/db/migrate/20150618035859_add_dummy_foreign_key.rb
549
589
  - spec/dummy/db/schema.rb
550
590
  - spec/dummy/db/shard_101.sqlite3
551
591
  - spec/dummy/db/shard_1020.sqlite3
@@ -565,6 +605,7 @@ test_files:
565
605
  - spec/dummy/db/shard_1330.sqlite3
566
606
  - spec/dummy/db/shard_1361.sqlite3
567
607
  - spec/dummy/db/shard_1384.sqlite3
608
+ - spec/dummy/db/shard_143.sqlite3
568
609
  - spec/dummy/db/shard_1446.sqlite3
569
610
  - spec/dummy/db/shard_1481.sqlite3
570
611
  - spec/dummy/db/shard_1508.sqlite3
@@ -576,21 +617,34 @@ test_files:
576
617
  - spec/dummy/db/shard_1630.sqlite3
577
618
  - spec/dummy/db/shard_1652.sqlite3
578
619
  - spec/dummy/db/shard_1679.sqlite3
620
+ - spec/dummy/db/shard_170.sqlite3
579
621
  - spec/dummy/db/shard_1703.sqlite3
580
622
  - spec/dummy/db/shard_1721.sqlite3
581
623
  - spec/dummy/db/shard_1746.sqlite3
582
624
  - spec/dummy/db/shard_19.sqlite3
625
+ - spec/dummy/db/shard_191.sqlite3
583
626
  - spec/dummy/db/shard_193.sqlite3
627
+ - spec/dummy/db/shard_206.sqlite3
584
628
  - spec/dummy/db/shard_23.sqlite3
585
629
  - spec/dummy/db/shard_234.sqlite3
630
+ - spec/dummy/db/shard_235.sqlite3
631
+ - spec/dummy/db/shard_248.sqlite3
586
632
  - spec/dummy/db/shard_257.sqlite3
633
+ - spec/dummy/db/shard_270.sqlite3
587
634
  - spec/dummy/db/shard_277.sqlite3
635
+ - spec/dummy/db/shard_304.sqlite3
588
636
  - spec/dummy/db/shard_311.sqlite3
589
637
  - spec/dummy/db/shard_324.sqlite3
638
+ - spec/dummy/db/shard_333.sqlite3
590
639
  - spec/dummy/db/shard_342.sqlite3
640
+ - spec/dummy/db/shard_347.sqlite3
591
641
  - spec/dummy/db/shard_375.sqlite3
642
+ - spec/dummy/db/shard_385.sqlite3
592
643
  - spec/dummy/db/shard_389.sqlite3
644
+ - spec/dummy/db/shard_405.sqlite3
645
+ - spec/dummy/db/shard_427.sqlite3
593
646
  - spec/dummy/db/shard_428.sqlite3
647
+ - spec/dummy/db/shard_441.sqlite3
594
648
  - spec/dummy/db/shard_452.sqlite3
595
649
  - spec/dummy/db/shard_462.sqlite3
596
650
  - spec/dummy/db/shard_483.sqlite3
@@ -628,47 +682,55 @@ test_files:
628
682
  - spec/dummy/tmp/cache/31C/A10/shard%2F48
629
683
  - spec/dummy/tmp/cache/31C/A50/shard%2F84
630
684
  - spec/dummy/tmp/cache/344/D90/shard%2F121
685
+ - spec/dummy/tmp/cache/344/DB0/shard%2F220
686
+ - spec/dummy/tmp/cache/345/DC0/shard%2F221
631
687
  - spec/dummy/tmp/cache/345/E00/shard%2F500
632
- - spec/dummy/tmp/cache/346/DF0/shard%2F321
633
- - spec/dummy/tmp/cache/349/E10/shard%2F153
688
+ - spec/dummy/tmp/cache/346/DE0/shard%2F231
689
+ - spec/dummy/tmp/cache/347/DE0/shard%2F142
690
+ - spec/dummy/tmp/cache/347/DF0/shard%2F151
691
+ - spec/dummy/tmp/cache/348/E30/shard%2F422
634
692
  - spec/dummy/tmp/cache/349/E20/shard%2F243
635
- - spec/dummy/tmp/cache/34A/E20/shard%2F154
636
- - spec/dummy/tmp/cache/34A/E40/shard%2F172
693
+ - spec/dummy/tmp/cache/349/E40/shard%2F423
694
+ - spec/dummy/tmp/cache/34A/E00/shard%2F217
695
+ - spec/dummy/tmp/cache/34A/E20/shard%2F316
696
+ - spec/dummy/tmp/cache/34A/E30/shard%2F244
697
+ - spec/dummy/tmp/cache/34A/E30/shard%2F325
637
698
  - spec/dummy/tmp/cache/34A/E70/shard%2F523
638
699
  - spec/dummy/tmp/cache/34A/EB0/shard%2F721
639
700
  - spec/dummy/tmp/cache/34A/EC0/shard%2F730
640
701
  - spec/dummy/tmp/cache/34B/E40/shard%2F245
702
+ - spec/dummy/tmp/cache/34B/E60/shard%2F344
641
703
  - spec/dummy/tmp/cache/34B/E60/shard%2F425
704
+ - spec/dummy/tmp/cache/34B/E70/shard%2F434
642
705
  - spec/dummy/tmp/cache/34B/EC0/shard%2F722
643
- - spec/dummy/tmp/cache/34C/E50/shard%2F246
644
- - spec/dummy/tmp/cache/34C/E80/shard%2F273
645
- - spec/dummy/tmp/cache/34C/E90/shard%2F363
646
- - spec/dummy/tmp/cache/34C/E90/shard%2F444
706
+ - spec/dummy/tmp/cache/34C/E40/shard%2F156
707
+ - spec/dummy/tmp/cache/34C/E80/shard%2F354
708
+ - spec/dummy/tmp/cache/34C/EA0/shard%2F453
647
709
  - spec/dummy/tmp/cache/34C/EA0/shard%2F615
648
710
  - spec/dummy/tmp/cache/34C/F00/shard%2F750
649
- - spec/dummy/tmp/cache/34D/E80/shard%2F265
650
- - spec/dummy/tmp/cache/34D/ED0/shard%2F391
711
+ - spec/dummy/tmp/cache/34D/E60/shard%2F409
712
+ - spec/dummy/tmp/cache/34D/EC0/shard%2F382
651
713
  - spec/dummy/tmp/cache/34D/EE0/shard%2F724
652
- - spec/dummy/tmp/cache/34E/ED0/shard%2F383
714
+ - spec/dummy/tmp/cache/34E/EA0/shard%2F437
653
715
  - spec/dummy/tmp/cache/34E/EF0/shard%2F725
654
716
  - spec/dummy/tmp/cache/34E/F00/shard%2F653
717
+ - spec/dummy/tmp/cache/34F/EB0/shard%2F438
718
+ - spec/dummy/tmp/cache/34F/EC0/shard%2F285
655
719
  - spec/dummy/tmp/cache/34F/EE0/shard%2F546
656
720
  - spec/dummy/tmp/cache/34F/F00/shard%2F807
657
721
  - spec/dummy/tmp/cache/34F/F30/shard%2F672
658
- - spec/dummy/tmp/cache/350/EA0/shard%2F178
659
- - spec/dummy/tmp/cache/350/EB0/shard%2F349
660
722
  - spec/dummy/tmp/cache/350/F00/shard%2F718
661
723
  - spec/dummy/tmp/cache/350/F40/shard%2F592
662
724
  - spec/dummy/tmp/cache/350/F40/shard%2F916
663
- - spec/dummy/tmp/cache/351/F00/shard%2F386
725
+ - spec/dummy/tmp/cache/351/EC0/shard%2F188
726
+ - spec/dummy/tmp/cache/351/EE0/shard%2F368
664
727
  - spec/dummy/tmp/cache/351/F10/shard%2F638
665
728
  - spec/dummy/tmp/cache/351/F10/shard%2F719
666
729
  - spec/dummy/tmp/cache/351/F50/shard%2F917
667
730
  - spec/dummy/tmp/cache/351/F70/shard%2F935
668
- - spec/dummy/tmp/cache/352/F10/shard%2F387
731
+ - spec/dummy/tmp/cache/352/EF0/shard%2F369
669
732
  - spec/dummy/tmp/cache/352/F10/shard%2F468
670
733
  - spec/dummy/tmp/cache/352/F30/shard%2F729
671
- - spec/dummy/tmp/cache/353/F10/shard%2F298
672
734
  - spec/dummy/tmp/cache/353/F50/shard%2F739
673
735
  - spec/dummy/tmp/cache/354/F50/shard%2F569
674
736
  - spec/dummy/tmp/cache/354/F80/shard%2F677
@@ -741,19 +803,23 @@ test_files:
741
803
  - spec/dummy/tmp/cache/3A4/EA0/shard%2F10012
742
804
  - spec/dummy/tmp/cache/3A4/EE0/shard%2F11101
743
805
  - spec/dummy/tmp/cache/3A5/EA0/shard%2F10004
806
+ - spec/dummy/tmp/cache/3A6/F10/shard%2F10221
744
807
  - spec/dummy/tmp/cache/3A6/F40/shard%2F10410
745
808
  - spec/dummy/tmp/cache/3A7/F20/shard%2F10060
746
809
  - spec/dummy/tmp/cache/3A7/F20/shard%2F11032
747
810
  - spec/dummy/tmp/cache/3A7/F30/shard%2F10231
748
811
  - spec/dummy/tmp/cache/3A8/EF0/shard%2F10106
812
+ - spec/dummy/tmp/cache/3A8/F50/shard%2F10322
749
813
  - spec/dummy/tmp/cache/3A8/F70/shard%2F11312
750
814
  - spec/dummy/tmp/cache/3A8/F90/shard%2F10520
751
815
  - spec/dummy/tmp/cache/3A9/F40/shard%2F10062
816
+ - spec/dummy/tmp/cache/3A9/F50/shard%2F10152
752
817
  - spec/dummy/tmp/cache/3A9/F50/shard%2F11124
753
818
  - spec/dummy/tmp/cache/3A9/F80/shard%2F10341
754
819
  - spec/dummy/tmp/cache/3AA/F10/shard%2F10027
755
820
  - spec/dummy/tmp/cache/3AA/F10/shard%2F10108
756
821
  - spec/dummy/tmp/cache/3AA/F30/shard%2F10045
822
+ - spec/dummy/tmp/cache/3AA/F90/shard%2F10423
757
823
  - spec/dummy/tmp/cache/3AA/FB0/shard%2F10441
758
824
  - spec/dummy/tmp/cache/3AA/FB0/shard%2F11170
759
825
  - spec/dummy/tmp/cache/3AA/FC0/shard%2F10612
@@ -762,8 +828,10 @@ test_files:
762
828
  - spec/dummy/tmp/cache/3AB/010/shard%2F10730
763
829
  - spec/dummy/tmp/cache/3AB/F30/shard%2F11009
764
830
  - spec/dummy/tmp/cache/3AB/F70/shard%2F10154
831
+ - spec/dummy/tmp/cache/3AB/F80/shard%2F10244
765
832
  - spec/dummy/tmp/cache/3AB/FD0/shard%2F11342
766
833
  - spec/dummy/tmp/cache/3AC/020/shard%2F10650
834
+ - spec/dummy/tmp/cache/3AC/F60/shard%2F10137
767
835
  - spec/dummy/tmp/cache/3AC/F90/shard%2F10083
768
836
  - spec/dummy/tmp/cache/3AC/F90/shard%2F11055
769
837
  - spec/dummy/tmp/cache/3AC/FC0/shard%2F10272
@@ -772,21 +840,26 @@ test_files:
772
840
  - spec/dummy/tmp/cache/3AD/F50/shard%2F10039
773
841
  - spec/dummy/tmp/cache/3AD/F90/shard%2F10318
774
842
  - spec/dummy/tmp/cache/3AD/FA0/shard%2F10246
843
+ - spec/dummy/tmp/cache/3AD/FC0/shard%2F10345
775
844
  - spec/dummy/tmp/cache/3AE/060/shard%2F10751
776
845
  - spec/dummy/tmp/cache/3AE/060/shard%2F11480
777
846
  - spec/dummy/tmp/cache/3AE/090/shard%2F10940
847
+ - spec/dummy/tmp/cache/3AE/FC0/shard%2F10175
778
848
  - spec/dummy/tmp/cache/3AE/FD0/shard%2F11237
779
849
  - spec/dummy/tmp/cache/3AE/FF0/shard%2F10364
780
850
  - spec/dummy/tmp/cache/3AF/010/shard%2F11427
781
851
  - spec/dummy/tmp/cache/3AF/020/shard%2F11193
852
+ - spec/dummy/tmp/cache/3AF/030/shard%2F10392
782
853
  - spec/dummy/tmp/cache/3AF/030/shard%2F10635
783
854
  - spec/dummy/tmp/cache/3AF/030/shard%2F11283
784
855
  - spec/dummy/tmp/cache/3AF/030/shard%2F11526
856
+ - spec/dummy/tmp/cache/3B0/000/shard%2F10438
785
857
  - spec/dummy/tmp/cache/3B0/040/shard%2F11365
786
858
  - spec/dummy/tmp/cache/3B0/060/shard%2F11626
787
859
  - spec/dummy/tmp/cache/3B0/090/shard%2F11572
788
860
  - spec/dummy/tmp/cache/3B0/FE0/shard%2F10177
789
861
  - spec/dummy/tmp/cache/3B0/FE0/shard%2F11149
862
+ - spec/dummy/tmp/cache/3B0/FF0/shard%2F10267
790
863
  - spec/dummy/tmp/cache/3B1/000/shard%2F11078
791
864
  - spec/dummy/tmp/cache/3B1/030/shard%2F10295
792
865
  - spec/dummy/tmp/cache/3B1/040/shard%2F10466
@@ -795,10 +868,13 @@ test_files:
795
868
  - spec/dummy/tmp/cache/3B2/070/shard%2F10566
796
869
  - spec/dummy/tmp/cache/3B2/0A0/shard%2F10917
797
870
  - spec/dummy/tmp/cache/3B2/0D0/shard%2F11673
871
+ - spec/dummy/tmp/cache/3B3/030/shard%2F10198
872
+ - spec/dummy/tmp/cache/3B3/040/shard%2F10369
798
873
  - spec/dummy/tmp/cache/3B3/060/shard%2F10387
799
874
  - spec/dummy/tmp/cache/3B3/0A0/shard%2F11719
800
875
  - spec/dummy/tmp/cache/3B3/100/shard%2F10963
801
876
  - spec/dummy/tmp/cache/3B4/0A0/shard%2F11549
877
+ - spec/dummy/tmp/cache/3B5/070/shard%2F10299
802
878
  - spec/dummy/tmp/cache/3B5/0B0/shard%2F10497
803
879
  - spec/dummy/tmp/cache/3B5/100/shard%2F11595
804
880
  - spec/dummy/tmp/cache/3B6/100/shard%2F10696
@@ -816,6 +892,7 @@ test_files:
816
892
  - spec/lib/active_record/connection_pool_spec.rb
817
893
  - spec/lib/active_record/finder_methods_spec.rb
818
894
  - spec/lib/active_record/persistence_spec.rb
895
+ - spec/lib/active_record/postgresql_adapter_spec.rb
819
896
  - spec/lib/active_record/query_cache_spec.rb
820
897
  - spec/lib/active_record/query_methods_spec.rb
821
898
  - spec/lib/active_record/relation_spec.rb