arison 0.1.1 → 0.1.3
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/arison.gemspec +1 -1
- data/lib/arison/core.rb +18 -3
- data/lib/arison/version.rb +1 -1
- metadata +7 -7
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 79eba19eaea1539c6d6a1d437a9a59f311c08a4f
|
4
|
+
data.tar.gz: 38371cddfcda719d3ff284a4b8b6281ad8ccf7de
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 272af779e1eefdf097efe74d47c4c8238da3367aa92fe54e7be58279ed6a4c69450b7476fc3679774d2de82f03bddf03dbbe0423f53ba0bfd9118491b340a489
|
7
|
+
data.tar.gz: 68b7abc608ed41b0d43434ee1997dc384f4540dd008c47cef005ed073518376f35d7d39f94a16b0814ba291aa2072e92bb3673a2f9a0cfe88f5d8052ebe378ca
|
data/arison.gemspec
CHANGED
@@ -17,7 +17,7 @@ Gem::Specification.new do |gem|
|
|
17
17
|
gem.test_files = gem.files.grep(%r{^(test|spec|features)/})
|
18
18
|
gem.require_paths = ['lib']
|
19
19
|
|
20
|
-
gem.add_dependency 'thor'
|
20
|
+
gem.add_dependency 'thor'
|
21
21
|
gem.add_dependency 'pg'
|
22
22
|
gem.add_dependency 'activesupport'
|
23
23
|
gem.add_dependency 'activerecord'
|
data/lib/arison/core.rb
CHANGED
@@ -1,6 +1,8 @@
|
|
1
1
|
require 'active_record'
|
2
2
|
require 'activerecord-import'
|
3
3
|
require 'active_support'
|
4
|
+
require 'logger'
|
5
|
+
require 'pp'
|
4
6
|
|
5
7
|
module Arison
|
6
8
|
class Core
|
@@ -10,10 +12,11 @@ module Arison
|
|
10
12
|
ActiveRecord::Base.establish_connection(@profile)
|
11
13
|
ActiveRecord::Base.default_timezone = :local
|
12
14
|
@connection = ActiveRecord::Base.connection
|
15
|
+
@logger = Logger.new(STDOUT)
|
13
16
|
end
|
14
17
|
|
15
18
|
def query(sql)
|
16
|
-
|
19
|
+
@connection.exec_query(sql).to_a
|
17
20
|
end
|
18
21
|
|
19
22
|
def columns_with_table_name(table_name)
|
@@ -39,7 +42,13 @@ module Arison
|
|
39
42
|
begin
|
40
43
|
record = record.inject({}){ |result, (k, v)|
|
41
44
|
length = limits[k]
|
42
|
-
result[k] = (
|
45
|
+
result[k] = if (v.class == Array || v.class == Hash)
|
46
|
+
v.to_s
|
47
|
+
elsif (length.nil? || v.nil? || v.class != String)
|
48
|
+
v
|
49
|
+
else
|
50
|
+
v.slice(0, length)
|
51
|
+
end
|
43
52
|
result
|
44
53
|
}
|
45
54
|
instance.attributes = record
|
@@ -51,7 +60,13 @@ module Arison
|
|
51
60
|
end
|
52
61
|
end
|
53
62
|
instances.in_groups_of(10000, false) do |block|
|
54
|
-
|
63
|
+
begin
|
64
|
+
klass.import(block)
|
65
|
+
rescue => e
|
66
|
+
pp block
|
67
|
+
@logger.error "\n#{e.message}\n#{e.backtrace.join("\n")}"
|
68
|
+
raise
|
69
|
+
end
|
55
70
|
end
|
56
71
|
end
|
57
72
|
|
data/lib/arison/version.rb
CHANGED
metadata
CHANGED
@@ -1,29 +1,29 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: arison
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.1.
|
4
|
+
version: 0.1.3
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Hiroshi Toyama
|
8
8
|
autorequire:
|
9
9
|
bindir: bin
|
10
10
|
cert_chain: []
|
11
|
-
date: 2017-
|
11
|
+
date: 2017-04-04 00:00:00.000000000 Z
|
12
12
|
dependencies:
|
13
13
|
- !ruby/object:Gem::Dependency
|
14
14
|
name: thor
|
15
15
|
requirement: !ruby/object:Gem::Requirement
|
16
16
|
requirements:
|
17
|
-
- - "
|
17
|
+
- - ">="
|
18
18
|
- !ruby/object:Gem::Version
|
19
|
-
version: 0
|
19
|
+
version: '0'
|
20
20
|
type: :runtime
|
21
21
|
prerelease: false
|
22
22
|
version_requirements: !ruby/object:Gem::Requirement
|
23
23
|
requirements:
|
24
|
-
- - "
|
24
|
+
- - ">="
|
25
25
|
- !ruby/object:Gem::Version
|
26
|
-
version: 0
|
26
|
+
version: '0'
|
27
27
|
- !ruby/object:Gem::Dependency
|
28
28
|
name: pg
|
29
29
|
requirement: !ruby/object:Gem::Requirement
|
@@ -226,7 +226,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
226
226
|
version: '0'
|
227
227
|
requirements: []
|
228
228
|
rubyforge_project:
|
229
|
-
rubygems_version: 2.
|
229
|
+
rubygems_version: 2.6.11
|
230
230
|
signing_key:
|
231
231
|
specification_version: 4
|
232
232
|
summary: postgresql command line interface
|