global_uid 1.3.1 → 1.4.0
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.
- data/global_uid.gemspec +2 -2
- data/lib/global_uid/base.rb +3 -1
- data/test/global_uid_test.rb +9 -0
- data/test/test_helper.rb +1 -0
- metadata +2 -2
data/global_uid.gemspec
CHANGED
@@ -13,8 +13,8 @@ Gem::Specification.new do |s|
|
|
13
13
|
## If your rubyforge_project name is different, then edit it and comment out
|
14
14
|
## the sub! line in the Rakefile
|
15
15
|
s.name = 'global_uid'
|
16
|
-
s.version = '1.
|
17
|
-
s.date = '
|
16
|
+
s.version = '1.4.0'
|
17
|
+
s.date = '2013-04-01'
|
18
18
|
s.rubyforge_project = 'global_uid'
|
19
19
|
|
20
20
|
## Make sure your summary is short. The description may be as long
|
data/lib/global_uid/base.rb
CHANGED
@@ -28,6 +28,8 @@ module GlobalUid
|
|
28
28
|
type = options[:uid_type] || "bigint(21) UNSIGNED"
|
29
29
|
start_id = options[:start_id] || 1
|
30
30
|
|
31
|
+
engine_stmt = global_uid_options[:storage_engine] ? "ENGINE=#{global_uid_options[:storage_engine]}" : ""
|
32
|
+
|
31
33
|
# TODO it would be nice to be able to set the engine or something to not be MySQL specific
|
32
34
|
with_connections do |connection|
|
33
35
|
connection.execute("CREATE TABLE IF NOT EXISTS `#{id_table_name}` (
|
@@ -35,7 +37,7 @@ module GlobalUid
|
|
35
37
|
`stub` char(1) NOT NULL DEFAULT '',
|
36
38
|
PRIMARY KEY (`id`),
|
37
39
|
UNIQUE KEY `stub` (`stub`)
|
38
|
-
)")
|
40
|
+
) #{engine_stmt}")
|
39
41
|
|
40
42
|
# prime the pump on each server
|
41
43
|
connection.execute("INSERT IGNORE INTO `#{id_table_name}` VALUES(#{start_id}, 'a')")
|
data/test/global_uid_test.rb
CHANGED
@@ -110,6 +110,7 @@ class GlobalUIDTest < ActiveSupport::TestCase
|
|
110
110
|
context "with global-uid enabled" do
|
111
111
|
setup do
|
112
112
|
GlobalUid::Base.global_uid_options[:disabled] = false
|
113
|
+
GlobalUid::Base.global_uid_options[:storage_engine] = "InnoDB"
|
113
114
|
CreateWithNoParams.up
|
114
115
|
@create_table = show_create_sql(WithGlobalUID, "with_global_uids").split("\n")
|
115
116
|
end
|
@@ -127,6 +128,14 @@ class GlobalUIDTest < ActiveSupport::TestCase
|
|
127
128
|
end
|
128
129
|
end
|
129
130
|
|
131
|
+
should "create tables with the given storage_engine" do
|
132
|
+
GlobalUid::Base.with_connections do |cx|
|
133
|
+
foo = cx.select_all("show create table with_global_uids_ids")
|
134
|
+
assert_match /ENGINE=InnoDB/, foo.first.values.join
|
135
|
+
end
|
136
|
+
|
137
|
+
end
|
138
|
+
|
130
139
|
should "tear off the auto_increment part of the primary key from the created table" do
|
131
140
|
id_line = @create_table.grep(/\`id\` int/i).first
|
132
141
|
assert_no_match /auto_increment/i, id_line
|
data/test/test_helper.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: global_uid
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 1.
|
4
|
+
version: 1.4.0
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,7 +9,7 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date:
|
12
|
+
date: 2013-04-01 00:00:00.000000000 Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: activerecord
|