activerecord-turntable 2.0.5 → 2.0.6
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.
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: d82829564262382156d47ab48a5331ee39507e2b
|
4
|
+
data.tar.gz: 2046ebf2f59a336a20d91df727c98da717a1b4f5
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: a29ef422e6cbe7494c67c9480e541469ebbfc2773f48a0ef606c130ca7b6c791a6a8502cb23ce46f8fb739899b4ea4c438a46d348e3ca4d4e42b6cd93e9117ce
|
7
|
+
data.tar.gz: befc1adb93081acf2d9ba91c5cad860039b37530e484198334cec82935dc608719e8845dd83fe326d8da0c9add919222edfb5493033a2f8c69a256e712292a34
|
data/CHANGELOG.md
CHANGED
data/gemfiles/rails4_2.gemfile
CHANGED
@@ -13,7 +13,7 @@ module ActiveRecord::Turntable::Migration
|
|
13
13
|
module ShardDefinition
|
14
14
|
def clusters(*cluster_names)
|
15
15
|
config = ActiveRecord::Base.turntable_config
|
16
|
-
(self.target_shards ||= [])
|
16
|
+
(self.target_shards ||= []).concat(
|
17
17
|
if cluster_names.first == :all
|
18
18
|
config['clusters'].map do |name, cluster_conf|
|
19
19
|
cluster_conf["shards"].map {|shard| shard["connection"]}
|
@@ -23,12 +23,13 @@ module ActiveRecord::Turntable::Migration
|
|
23
23
|
config['clusters'][cluster_name]["shards"].map do |shard|
|
24
24
|
shard["connection"]
|
25
25
|
end
|
26
|
-
end
|
26
|
+
end.flatten
|
27
27
|
end
|
28
|
+
)
|
28
29
|
end
|
29
30
|
|
30
31
|
def shards(*connection_names)
|
31
|
-
(self.target_shards ||= [])
|
32
|
+
(self.target_shards ||= []).concat connection_names
|
32
33
|
end
|
33
34
|
end
|
34
35
|
|
@@ -0,0 +1,38 @@
|
|
1
|
+
require 'spec_helper'
|
2
|
+
|
3
|
+
describe ActiveRecord::Turntable::Migration do
|
4
|
+
before(:all) do
|
5
|
+
reload_turntable!(File.join(File.dirname(__FILE__), "../../../config/turntable.yml"))
|
6
|
+
end
|
7
|
+
|
8
|
+
before(:each) do
|
9
|
+
establish_connection_to(:test)
|
10
|
+
truncate_shard
|
11
|
+
end
|
12
|
+
|
13
|
+
describe ".target_shards" do
|
14
|
+
subject { migration_class.new.target_shards }
|
15
|
+
|
16
|
+
context "With clusters definitions" do
|
17
|
+
let(:migration_class) {
|
18
|
+
klass = Class.new(ActiveRecord::Migration) {
|
19
|
+
clusters :user_cluster
|
20
|
+
}
|
21
|
+
}
|
22
|
+
let(:cluster_config) { ActiveRecord::Base.turntable_config["clusters"]["user_cluster"] }
|
23
|
+
let(:user_cluster_shards) { cluster_config["shards"].map { |s| s["connection"] } }
|
24
|
+
|
25
|
+
it { is_expected.to eq(user_cluster_shards) }
|
26
|
+
end
|
27
|
+
|
28
|
+
context "With shards definitions" do
|
29
|
+
let(:migration_class) {
|
30
|
+
klass = Class.new(ActiveRecord::Migration) {
|
31
|
+
shards :user_shard_01
|
32
|
+
}
|
33
|
+
}
|
34
|
+
|
35
|
+
it { is_expected.to eq([:user_shard_01]) }
|
36
|
+
end
|
37
|
+
end
|
38
|
+
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: activerecord-turntable
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.0.
|
4
|
+
version: 2.0.6
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- gussan
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2014-
|
12
|
+
date: 2014-12-08 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|
@@ -392,6 +392,7 @@ files:
|
|
392
392
|
- spec/active_record/turntable/active_record_ext/association_spec.rb
|
393
393
|
- spec/active_record/turntable/active_record_ext/clever_load_spec.rb
|
394
394
|
- spec/active_record/turntable/active_record_ext/locking_optimistic_spec.rb
|
395
|
+
- spec/active_record/turntable/active_record_ext/migration_spec.rb
|
395
396
|
- spec/active_record/turntable/active_record_ext/persistence_spec.rb
|
396
397
|
- spec/active_record/turntable/algorithm/range_algorithm_spec.rb
|
397
398
|
- spec/active_record/turntable/algorithm/range_bsearch_algorithm_spec.rb
|
@@ -449,7 +450,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
449
450
|
version: '0'
|
450
451
|
requirements: []
|
451
452
|
rubyforge_project: activerecord-turntable
|
452
|
-
rubygems_version: 2.
|
453
|
+
rubygems_version: 2.4.4
|
453
454
|
signing_key:
|
454
455
|
specification_version: 4
|
455
456
|
summary: ActiveRecord sharding extension
|
@@ -458,6 +459,7 @@ test_files:
|
|
458
459
|
- spec/active_record/turntable/active_record_ext/association_spec.rb
|
459
460
|
- spec/active_record/turntable/active_record_ext/clever_load_spec.rb
|
460
461
|
- spec/active_record/turntable/active_record_ext/locking_optimistic_spec.rb
|
462
|
+
- spec/active_record/turntable/active_record_ext/migration_spec.rb
|
461
463
|
- spec/active_record/turntable/active_record_ext/persistence_spec.rb
|
462
464
|
- spec/active_record/turntable/algorithm/range_algorithm_spec.rb
|
463
465
|
- spec/active_record/turntable/algorithm/range_bsearch_algorithm_spec.rb
|
@@ -495,4 +497,3 @@ test_files:
|
|
495
497
|
- spec/spec_helper.rb
|
496
498
|
- spec/support/matchers/be_saved_to.rb
|
497
499
|
- spec/support/turntable_helper.rb
|
498
|
-
has_rdoc:
|