Class: Maatkit::SlavePrefetch

Inherits:
Object
  • Object
show all
Defined in:
lib/maatkit-ruby/mk-slave-prefetch.rb

Overview

Pipeline relay logs on a MySQL slave to pre-warm caches.

Maatkit::SlavePrefetch.new( array, str, array)

Instance Attribute Summary collapse

Instance Method Summary collapse

Constructor Details

#initializeSlavePrefetch

Returns a new SlavePrefetch Object



67
68
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 67

def initialize()
end

Instance Attribute Details

#ask_passObject

FALSE



15
16
17
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 15

def ask_pass
  @ask_pass
end

#charsetObject

(No # value)



16
17
18
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 16

def charset
  @charset
end

#check_intervalObject

16,1,1024



17
18
19
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 17

def check_interval
  @check_interval
end

#configObject

/etc/maatkit/maatkit.conf,/etc/maatkit/mk_slave_prefetch.conf,/home/joel/.maatkit.conf,/home/joel/.mk_slave_prefetch.conf



18
19
20
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 18

def config
  @config
end

#continue_on_errorObject

TRUE



19
20
21
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 19

def continue_on_error
  @continue_on_error
end

#daemonizeObject

FALSE



20
21
22
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 20

def daemonize
  @daemonize
end

#databaseObject

(No # value)



21
22
23
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 21

def database
  @database
end

#defaults_fileObject

(No # value)



22
23
24
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 22

def defaults_file
  @defaults_file
end

#dry_runObject

FALSE



23
24
25
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 23

def dry_run
  @dry_run
end

#errorsObject

0



24
25
26
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 24

def errors
  @errors
end

#executeObject

FALSE



25
26
27
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 25

def execute
  @execute
end

#helpObject

TRUE



26
27
28
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 26

def help
  @help
end

#hostObject

(No # value)



27
28
29
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 27

def host
  @host
end

#inject_columnsObject

TRUE



28
29
30
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 28

def inject_columns
  @inject_columns
end

#io_lagObject

1024



29
30
31
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 29

def io_lag
  @io_lag
end

#logObject

(No # value)



30
31
32
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 30

def log
  @log
end

#max_query_timeObject

1



31
32
33
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 31

def max_query_time
  @max_query_time
end

#num_prefixObject

FALSE



32
33
34
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 32

def num_prefix
  @num_prefix
end

#offsetObject

128



33
34
35
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 33

def offset
  @offset
end

#passwordObject

(No # value)



34
35
36
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 34

def password
  @password
end

#path_to_mk_slave_prefetchObject

Sets the executable path, otherwise the environment path will be used.



62
63
64
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 62

def path_to_mk_slave_prefetch
  @path_to_mk_slave_prefetch
end

#permit_regexpObject

(No # value)



35
36
37
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 35

def permit_regexp
  @permit_regexp
end

#pidObject

(No # value)



36
37
38
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 36

def pid
  @pid
end

#portObject

(No # value)



37
38
39
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 37

def port
  @port
end

FALSE



38
39
40
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 38

def print
  @print
end

FALSE



39
40
41
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 39

def print_nonrewritten
  @print_nonrewritten
end

#progressObject

(No # value)



40
41
42
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 40

def progress
  @progress
end

#query_sample_sizeObject

4



41
42
43
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 41

def query_sample_size
  @query_sample_size
end

#reject_regexpObject

(No # value)



42
43
44
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 42

def reject_regexp
  @reject_regexp
end

#relay_logObject

(No # value)



43
44
45
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 43

def relay_log
  @relay_log
end

#relay_log_dirObject

(No # value)



44
45
46
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 44

def relay_log_dir
  @relay_log_dir
end

#run_timeObject

(No # value)



45
46
47
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 45

def run_time
  @run_time
end

#secondary_indexesObject

FALSE



46
47
48
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 46

def secondary_indexes
  @secondary_indexes
end

#sentinelObject

/tmp/mk_slave_prefetch_sentinel



47
48
49
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 47

def sentinel
  @sentinel
end

#set_varsObject

wait_timeout=10000



48
49
50
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 48

def set_vars
  @set_vars
end

#sleepObject

1



49
50
51
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 49

def sleep
  @sleep
end

#socketObject

(No # value)



50
51
52
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 50

def socket
  @socket
end

#statisticsObject

FALSE



51
52
53
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 51

def statistics
  @statistics
end

#stopObject

FALSE



52
53
54
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 52

def stop
  @stop
end

#threadsObject

2



53
54
55
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 53

def threads
  @threads
end

#tmpdirObject

/dev/null



54
55
56
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 54

def tmpdir
  @tmpdir
end

#userObject

(No # value)



55
56
57
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 55

def user
  @user
end

#versionObject

FALSE



56
57
58
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 56

def version
  @version
end

#windowObject

4096



57
58
59
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 57

def window
  @window
end

Instance Method Details

#start(options = nil) ⇒ Object

Execute the command



73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
# File 'lib/maatkit-ruby/mk-slave-prefetch.rb', line 73

def start(options = nil)
  tmp = Tempfile.new('tmp')
  command = option_string() + options.to_s + " 2> " + tmp.path
  success = system(command)
  if success
    begin
      while (line = tmp.readline)
        line.chomp
        selected_string = line
      end
    rescue EOFError
      tmp.close
    end
    return selected_string
  else
    tmp.close!
    return success
  end
end