flydata 0.6.6 → 0.6.7
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/VERSION +1 -1
- data/flydata.gemspec +3 -2
- data/lib/flydata/command/restart.rb +1 -2
- data/lib/flydata/command/setup.rb +1 -1
- data/lib/flydata/command/sync.rb +12 -0
- data/lib/flydata/source_file/data_entry.rb +11 -0
- data/lib/flydata/source_mysql/command/mysqlbinlog.rb +7 -2
- data/spec/flydata/command/restart_spec.rb +2 -3
- data/spec/flydata/command/setup_spec.rb +1 -1
- metadata +3 -2
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA1:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: b6701c9350e3750c31548dd87a4eef8f7fe0b892
|
4
|
+
data.tar.gz: 47bc03157661a676aa260bd8b4874ddb841473dd
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: 9bad37633ebfa90d3cd8a6cd7a7a0fe89c37b44c6d0af79485b3d73b4ba3aea2f430fc979a9eedad4c390a3ff99270d7470977dcabe7bdadbaf801f6b4ba3210
|
7
|
+
data.tar.gz: 2177c90471da7c96ff39fb2af91e5144904296d460a21d024b0b60c9de37ada11de1718a07e239385bd64a62635006db4189cb76687dfdb26acd1eee50c0ccb9
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.6.
|
1
|
+
0.6.7
|
data/flydata.gemspec
CHANGED
@@ -5,11 +5,11 @@
|
|
5
5
|
|
6
6
|
Gem::Specification.new do |s|
|
7
7
|
s.name = "flydata"
|
8
|
-
s.version = "0.6.
|
8
|
+
s.version = "0.6.7"
|
9
9
|
|
10
10
|
s.required_rubygems_version = Gem::Requirement.new(">= 0") if s.respond_to? :required_rubygems_version=
|
11
11
|
s.authors = ["Koichi Fujikawa", "Masashi Miyazaki", "Matthew Luu", "Mak Inada", "Sriram NS"]
|
12
|
-
s.date = "2016-02-
|
12
|
+
s.date = "2016-02-17"
|
13
13
|
s.description = "FlyData Agent"
|
14
14
|
s.email = "sysadmin@flydata.com"
|
15
15
|
s.executables = ["fdmysqldump", "fdredshift", "flydata", "serverinfo"]
|
@@ -217,6 +217,7 @@ Gem::Specification.new do |s|
|
|
217
217
|
"lib/flydata/source/source_pos.rb",
|
218
218
|
"lib/flydata/source/sync.rb",
|
219
219
|
"lib/flydata/source/sync_generate_table_ddl.rb",
|
220
|
+
"lib/flydata/source_file/data_entry.rb",
|
220
221
|
"lib/flydata/source_file/setup.rb",
|
221
222
|
"lib/flydata/source_file/sync.rb",
|
222
223
|
"lib/flydata/source_mysql/command/mysql.rb",
|
@@ -71,7 +71,7 @@ What's next?
|
|
71
71
|
# Surprisingly, Helper's start method kills the process after starting
|
72
72
|
# the helper thanks to ServerEngine. So the command needs to run in a
|
73
73
|
# separate process.
|
74
|
-
|
74
|
+
system "flydata helper:restart"
|
75
75
|
Flydata::Command::Login.new.run unless flydata.credentials.authenticated?
|
76
76
|
Flydata::Command::Conf.new.copy_templates
|
77
77
|
puts
|
data/lib/flydata/command/sync.rb
CHANGED
@@ -268,11 +268,15 @@ EOS
|
|
268
268
|
end
|
269
269
|
end
|
270
270
|
|
271
|
+
# Command: flydata sync:repair
|
272
|
+
# - Entry method
|
271
273
|
def repair
|
272
274
|
_repair
|
273
275
|
end
|
274
276
|
run_exclusive :repair
|
275
277
|
|
278
|
+
# Command: flydata sync:check
|
279
|
+
# - Entry method
|
276
280
|
def check(options = {})
|
277
281
|
context = source.source_pos
|
278
282
|
status, pos_mismatch_tables, gap_tables = _check(context, options)
|
@@ -310,6 +314,14 @@ EOS
|
|
310
314
|
end
|
311
315
|
run_exclusive :check
|
312
316
|
|
317
|
+
# Command: flydata sync:compat_check
|
318
|
+
# - Entry method
|
319
|
+
def compat_check
|
320
|
+
context = source.sync_generate_table_ddl(flydata.data_port.get, opts)
|
321
|
+
context.run_compatibility_check
|
322
|
+
end
|
323
|
+
run_exclusive :compat_check
|
324
|
+
|
313
325
|
private
|
314
326
|
|
315
327
|
def generate_kv_pairs(keys, values)
|
@@ -8,14 +8,17 @@ module Flydata
|
|
8
8
|
include MysqlCommandBase
|
9
9
|
|
10
10
|
def generate_command(dbconf, args)
|
11
|
+
skip_ssl = !!args.delete('--skip-ssl')
|
11
12
|
dbconf.delete('tables')
|
12
13
|
dbconf[:custom_option_end] = args.join(' ')
|
13
14
|
dbconf[:command] = 'mysqlbinlog'
|
14
15
|
# --default-character-set=utf8 is not supported
|
15
16
|
dbconf[:no_default_option] = true
|
16
17
|
# ssl is not supported for mysql5.6 or older mysqlbinlog command
|
17
|
-
|
18
|
-
|
18
|
+
if skip_ssl
|
19
|
+
dbconf.delete('ssl_ca')
|
20
|
+
dbconf.delete('ssl_cipher')
|
21
|
+
end
|
19
22
|
dbconf.delete('database')
|
20
23
|
if args.empty?
|
21
24
|
puts <<EOT
|
@@ -24,6 +27,8 @@ example:
|
|
24
27
|
flydata mysqlbinlog --raw --read-from-remote-server --result-file "binlog-" mysql-bin-changelog.xxxx
|
25
28
|
2. Dump decoded binlog data
|
26
29
|
flydata mysqlbinlog -vv --base64-output=decode-row --hexdump --read-from-remote-server --start-position=4 --stop-position=yyyyy mysql-bin-changelog.xxxxx > mysql-bin-changelog.xxxxx
|
30
|
+
|
31
|
+
NOTE: Add --skip-ssl to skip ssl options
|
27
32
|
EOT
|
28
33
|
return
|
29
34
|
end
|
@@ -6,14 +6,12 @@ module Flydata
|
|
6
6
|
describe Restart do
|
7
7
|
subject { described_class.new }
|
8
8
|
let(:sender) { double("sender") }
|
9
|
-
let(:helper) { double("helper") }
|
10
9
|
let(:opts) { double("opts") }
|
11
10
|
|
12
11
|
it "should restart sender and helper when skip-helper option is not passed" do
|
13
12
|
expect(Flydata::Command::Sender).to receive(:new).and_return(sender)
|
14
13
|
expect(sender).to receive(:restart)
|
15
|
-
|
16
|
-
expect(helper).to receive(:restart)
|
14
|
+
expect_any_instance_of(Flydata::Command::Restart).to receive(:system).with('flydata helper:restart')
|
17
15
|
subject.run
|
18
16
|
end
|
19
17
|
|
@@ -21,6 +19,7 @@ module Flydata
|
|
21
19
|
expect(Flydata::Command::Sender).to receive(:new).and_return(sender)
|
22
20
|
expect(sender).to receive(:restart)
|
23
21
|
expect(opts).to receive(:skip_helper?).and_return(true)
|
22
|
+
expect_any_instance_of(Flydata::Command::Restart).to receive(:system).never
|
24
23
|
described_class.new(opts).run
|
25
24
|
end
|
26
25
|
end
|
@@ -36,7 +36,7 @@ module Flydata
|
|
36
36
|
expect(Flydata::Command::Conf).to receive(:new).and_return(conf)
|
37
37
|
expect(Flydata::Command::Login).to receive(:new).and_return(login)
|
38
38
|
expect(Flydata::Command::Sender).to receive(:new).and_return(sender).twice
|
39
|
-
|
39
|
+
expect_any_instance_of(Flydata::Command::Setup).to receive(:system).with('flydata helper:restart')
|
40
40
|
subject.initial_run
|
41
41
|
end
|
42
42
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: flydata
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.6.
|
4
|
+
version: 0.6.7
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Koichi Fujikawa
|
@@ -12,7 +12,7 @@ authors:
|
|
12
12
|
autorequire:
|
13
13
|
bindir: bin
|
14
14
|
cert_chain: []
|
15
|
-
date: 2016-02-
|
15
|
+
date: 2016-02-17 00:00:00.000000000 Z
|
16
16
|
dependencies:
|
17
17
|
- !ruby/object:Gem::Dependency
|
18
18
|
name: rest-client
|
@@ -692,6 +692,7 @@ files:
|
|
692
692
|
- lib/flydata/source/source_pos.rb
|
693
693
|
- lib/flydata/source/sync.rb
|
694
694
|
- lib/flydata/source/sync_generate_table_ddl.rb
|
695
|
+
- lib/flydata/source_file/data_entry.rb
|
695
696
|
- lib/flydata/source_file/setup.rb
|
696
697
|
- lib/flydata/source_file/sync.rb
|
697
698
|
- lib/flydata/source_mysql/command/mysql.rb
|