perfectqueue 0.8.36 → 0.8.37

Sign up to get free protection for your applications and to get access to all the features.
data/ChangeLog CHANGED
@@ -1,3 +1,9 @@
1
+ == 2014-05-28 version 0.8.37
2
+
3
+ * rdb_compat: fixed a deadlock problem that rdb_compat doesn't unlock tables if it
4
+ uses connection pooling.
5
+
6
+
1
7
  == 2014-05-21 version 0.8.36
2
8
 
3
9
  * ThreadProcessor: fixed a problem that it takes next task even if TaskMonitor
@@ -99,14 +99,17 @@ SQL
99
99
  when /sqlite/i
100
100
  # sqlite always locks tables on BEGIN
101
101
  @table_lock = nil
102
+ @table_unlock = nil
102
103
  when /mysql/i
103
104
  if config[:disable_resource_limit]
104
105
  @table_lock = "LOCK TABLES `#{@table}` WRITE"
105
106
  else
106
107
  @table_lock = "LOCK TABLES `#{@table}` WRITE, `#{@table}` AS T WRITE"
107
108
  end
109
+ @table_unlock = "UNLOCK TABLES"
108
110
  else
109
111
  @table_lock = "LOCK TABLE `#{@table}`"
112
+ @table_unlock = nil
110
113
  end
111
114
 
112
115
  @prefetch_break_types = config[:prefetch_break_types] || []
@@ -257,6 +260,10 @@ SQL
257
260
  end
258
261
 
259
262
  @cleanup_interval_count -= 1
263
+
264
+ if @table_unlock
265
+ @db[@table_unlock].update
266
+ end
260
267
  end
261
268
  return tasks
262
269
  }
@@ -1,3 +1,3 @@
1
1
  module PerfectQueue
2
- VERSION = "0.8.36"
2
+ VERSION = "0.8.37"
3
3
  end
metadata CHANGED
@@ -1,18 +1,20 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: perfectqueue
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.8.36
4
+ version: 0.8.37
5
+ prerelease:
5
6
  platform: ruby
6
7
  authors:
7
8
  - Sadayuki Furuhashi
8
9
  autorequire:
9
10
  bindir: bin
10
11
  cert_chain: []
11
- date: 2014-05-22 00:00:00.000000000 Z
12
+ date: 2014-05-29 00:00:00.000000000 Z
12
13
  dependencies:
13
14
  - !ruby/object:Gem::Dependency
14
15
  name: sequel
15
16
  requirement: !ruby/object:Gem::Requirement
17
+ none: false
16
18
  requirements:
17
19
  - - ~>
18
20
  - !ruby/object:Gem::Version
@@ -20,6 +22,7 @@ dependencies:
20
22
  type: :runtime
21
23
  prerelease: false
22
24
  version_requirements: !ruby/object:Gem::Requirement
25
+ none: false
23
26
  requirements:
24
27
  - - ~>
25
28
  - !ruby/object:Gem::Version
@@ -27,6 +30,7 @@ dependencies:
27
30
  - !ruby/object:Gem::Dependency
28
31
  name: rake
29
32
  requirement: !ruby/object:Gem::Requirement
33
+ none: false
30
34
  requirements:
31
35
  - - ~>
32
36
  - !ruby/object:Gem::Version
@@ -34,6 +38,7 @@ dependencies:
34
38
  type: :development
35
39
  prerelease: false
36
40
  version_requirements: !ruby/object:Gem::Requirement
41
+ none: false
37
42
  requirements:
38
43
  - - ~>
39
44
  - !ruby/object:Gem::Version
@@ -41,6 +46,7 @@ dependencies:
41
46
  - !ruby/object:Gem::Dependency
42
47
  name: rspec
43
48
  requirement: !ruby/object:Gem::Requirement
49
+ none: false
44
50
  requirements:
45
51
  - - ~>
46
52
  - !ruby/object:Gem::Version
@@ -48,6 +54,7 @@ dependencies:
48
54
  type: :development
49
55
  prerelease: false
50
56
  version_requirements: !ruby/object:Gem::Requirement
57
+ none: false
51
58
  requirements:
52
59
  - - ~>
53
60
  - !ruby/object:Gem::Version
@@ -55,6 +62,7 @@ dependencies:
55
62
  - !ruby/object:Gem::Dependency
56
63
  name: simplecov
57
64
  requirement: !ruby/object:Gem::Requirement
65
+ none: false
58
66
  requirements:
59
67
  - - ~>
60
68
  - !ruby/object:Gem::Version
@@ -62,6 +70,7 @@ dependencies:
62
70
  type: :development
63
71
  prerelease: false
64
72
  version_requirements: !ruby/object:Gem::Requirement
73
+ none: false
65
74
  requirements:
66
75
  - - ~>
67
76
  - !ruby/object:Gem::Version
@@ -69,6 +78,7 @@ dependencies:
69
78
  - !ruby/object:Gem::Dependency
70
79
  name: sqlite3
71
80
  requirement: !ruby/object:Gem::Requirement
81
+ none: false
72
82
  requirements:
73
83
  - - ~>
74
84
  - !ruby/object:Gem::Version
@@ -76,6 +86,7 @@ dependencies:
76
86
  type: :development
77
87
  prerelease: false
78
88
  version_requirements: !ruby/object:Gem::Requirement
89
+ none: false
79
90
  requirements:
80
91
  - - ~>
81
92
  - !ruby/object:Gem::Version
@@ -134,26 +145,33 @@ files:
134
145
  homepage: https://github.com/treasure-data/perfectqueue
135
146
  licenses:
136
147
  - Apache 2.0
137
- metadata: {}
138
148
  post_install_message:
139
149
  rdoc_options: []
140
150
  require_paths:
141
151
  - lib
142
152
  required_ruby_version: !ruby/object:Gem::Requirement
153
+ none: false
143
154
  requirements:
144
155
  - - ! '>='
145
156
  - !ruby/object:Gem::Version
146
157
  version: '0'
158
+ segments:
159
+ - 0
160
+ hash: 3778995131748880902
147
161
  required_rubygems_version: !ruby/object:Gem::Requirement
162
+ none: false
148
163
  requirements:
149
164
  - - ! '>='
150
165
  - !ruby/object:Gem::Version
151
166
  version: '0'
167
+ segments:
168
+ - 0
169
+ hash: 3778995131748880902
152
170
  requirements: []
153
171
  rubyforge_project:
154
- rubygems_version: 2.2.2
172
+ rubygems_version: 1.8.24
155
173
  signing_key:
156
- specification_version: 4
174
+ specification_version: 3
157
175
  summary: Highly available distributed cron built on RDBMS
158
176
  test_files:
159
177
  - spec/queue_spec.rb
@@ -161,4 +179,3 @@ test_files:
161
179
  - spec/spec_helper.rb
162
180
  - spec/stress.rb
163
181
  - spec/supervisor_spec.rb
164
- has_rdoc: false
checksums.yaml DELETED
@@ -1,15 +0,0 @@
1
- ---
2
- !binary "U0hBMQ==":
3
- metadata.gz: !binary |-
4
- N2FhYWNmY2RmZjk0MDYxMzM2MDFlN2EwYmVjYTc4MjcxNWVhNWEwNA==
5
- data.tar.gz: !binary |-
6
- NmE5MGJjZTc2MzNhMTgwOGJmM2EyODk4NzM4Y2Q1NzczNWIyNGI1OA==
7
- SHA512:
8
- metadata.gz: !binary |-
9
- ODAwYmI5MGUwNjJlYzg3ZTc2YjQzN2MzZDNlNzlhNmE5NzZhMDQ5ZTM4NmVl
10
- M2Y3NmI3OWViOWVmMmM5NTFkODQxY2Y5NzI2MDFjZmUyODkyYTllYTU4MWQz
11
- ODcxMTc2M2U2ZGUxODkzYjg5NDY1ZTQxZWI3YWZiNGRmZjUyNjQ=
12
- data.tar.gz: !binary |-
13
- N2E0NWQwZTZiM2RiMGY2ZDYwNzU5NTBlMTBhNjI3MzYyZDk0MmJjNGY0OGM2
14
- NDQ0MmJmYmVkNzVmMTVmYmQ5Zjk0MThjNTg2ZDMzYTg2OGYwOTljYWIyZWNl
15
- YTZlMjcwZjRjMjU0MjM2ODc3NTVhMmQ5ZmRkZjZiMTdkNjUyN2U=