ey_snaplock 0.0.10 → 0.0.11.pre

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.
@@ -7,6 +7,10 @@ module EY
7
7
  end
8
8
 
9
9
  def lock_filename
10
+ p '######'
11
+ p ENV["MYSQL_LOCK_FILENAME"]
12
+ p File.read(ENV["MYSQL_LOCK_FILENAME"])
13
+ p '$$$$$$'
10
14
  ENV["MYSQL_LOCK_FILENAME"] || "/db/mysql/.ey_snaplock.pid"
11
15
  end
12
16
 
@@ -31,7 +35,7 @@ module EY
31
35
  pipe = IO.popen(@mysql, 'w')
32
36
  @read_lock_pid = pipe.pid
33
37
  pipe.puts('flush tables with read lock;')
34
- SystemTimer.timeout_after(timeout) do
38
+ EY::Snaplock::Timer.timeout(timeout) do
35
39
  until locked?
36
40
  sleep 1
37
41
  end
@@ -0,0 +1,15 @@
1
+ module EY
2
+ class Snaplock
3
+ class Timer
4
+ def self.timeout(sec)
5
+ if RUBY_VERSION =~ /^1\.8/
6
+ require 'system_timer'
7
+ SystemTimer.timeout_after(sec) { yield }
8
+ else
9
+ require 'timeout'
10
+ Timeout.timeout(sec) { yield }
11
+ end
12
+ end
13
+ end
14
+ end
15
+ end
@@ -1,5 +1,5 @@
1
1
  module EY
2
2
  class Snaplock
3
- VERSION = '0.0.10'
3
+ VERSION = '0.0.11.pre'
4
4
  end
5
5
  end
data/lib/ey_snaplock.rb CHANGED
@@ -1,7 +1,7 @@
1
1
  require 'net/http'
2
2
  require 'net/https'
3
3
  require 'ey_snaplock/database'
4
- require 'system_timer'
4
+ require 'ey_snaplock/timer'
5
5
 
6
6
  module EY
7
7
  class Snaplock
@@ -52,7 +52,7 @@ module EY
52
52
  def timeout
53
53
  lambda do
54
54
  begin
55
- SystemTimer.timeout_after(REQUEST_TIMEOUT) { yield }
55
+ EY::Snaplock::Timer.timeout(REQUEST_TIMEOUT) { yield }
56
56
  rescue Timeout::Error
57
57
  $stderr.puts "Timeout Exceeded: Callback request took longer than #{REQUEST_TIMEOUT} seconds."
58
58
  raise
metadata CHANGED
@@ -1,13 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ey_snaplock
3
3
  version: !ruby/object:Gem::Version
4
- hash: 11
5
- prerelease: false
4
+ hash: 961916008
5
+ prerelease: 7
6
6
  segments:
7
7
  - 0
8
8
  - 0
9
- - 10
10
- version: 0.0.10
9
+ - 11
10
+ - pre
11
+ version: 0.0.11.pre
11
12
  platform: ruby
12
13
  authors:
13
14
  - Engine Yard
@@ -15,8 +16,7 @@ autorequire:
15
16
  bindir: bin
16
17
  cert_chain: []
17
18
 
18
- date: 2011-12-29 00:00:00 -08:00
19
- default_executable:
19
+ date: 2012-02-10 00:00:00 Z
20
20
  dependencies:
21
21
  - !ruby/object:Gem::Dependency
22
22
  name: addressable
@@ -58,12 +58,13 @@ dependencies:
58
58
  requirements:
59
59
  - - "="
60
60
  - !ruby/object:Gem::Version
61
- hash: 49
61
+ hash: 11
62
62
  segments:
63
63
  - 0
64
- - 8
65
- - 7
66
- version: 0.8.7
64
+ - 9
65
+ - 2
66
+ - 2
67
+ version: 0.9.2.2
67
68
  type: :development
68
69
  version_requirements: *id003
69
70
  - !ruby/object:Gem::Dependency
@@ -140,11 +141,11 @@ files:
140
141
  - lib/ey_snaplock/database/mysql.rb
141
142
  - lib/ey_snaplock/database/postgresql9.rb
142
143
  - lib/ey_snaplock/database.rb
144
+ - lib/ey_snaplock/timer.rb
143
145
  - lib/ey_snaplock/version.rb
144
146
  - lib/ey_snaplock.rb
145
147
  - LICENSE
146
148
  - README.md
147
- has_rdoc: true
148
149
  homepage:
149
150
  licenses: []
150
151
 
@@ -165,16 +166,18 @@ required_ruby_version: !ruby/object:Gem::Requirement
165
166
  required_rubygems_version: !ruby/object:Gem::Requirement
166
167
  none: false
167
168
  requirements:
168
- - - ">="
169
+ - - ">"
169
170
  - !ruby/object:Gem::Version
170
- hash: 3
171
+ hash: 25
171
172
  segments:
172
- - 0
173
- version: "0"
173
+ - 1
174
+ - 3
175
+ - 1
176
+ version: 1.3.1
174
177
  requirements: []
175
178
 
176
179
  rubyforge_project:
177
- rubygems_version: 1.3.7
180
+ rubygems_version: 1.8.6
178
181
  signing_key:
179
182
  specification_version: 3
180
183
  summary: Server side components for Engine Yard's snapshotting process