perfectqueue 0.7.10 → 0.7.11
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.
- data/ChangeLog +5 -0
- data/lib/perfectqueue/backend/rdb.rb +14 -1
- data/lib/perfectqueue/version.rb +1 -1
- metadata +6 -6
data/ChangeLog
CHANGED
@@ -12,6 +12,19 @@ class RDBBackend < Backend
|
|
12
12
|
connect {
|
13
13
|
# connection test
|
14
14
|
}
|
15
|
+
@sql = <<SQL
|
16
|
+
SELECT id, timeout, data, created_at, resource
|
17
|
+
FROM `#{@table}`
|
18
|
+
LEFT JOIN (
|
19
|
+
SELECT resource AS res,
|
20
|
+
CASE WHEN resource IS NULL THEN 0 ELSE COUNT(1) END AS running
|
21
|
+
FROM `#{@table}`
|
22
|
+
WHERE timeout > ? AND created_at IS NOT NULL
|
23
|
+
GROUP BY resource
|
24
|
+
) AS T ON resource = res
|
25
|
+
WHERE timeout <= ? AND (running IS NULL OR running < #{MAX_RESOURCE})
|
26
|
+
ORDER BY timeout ASC LIMIT #{MAX_SELECT_ROW}
|
27
|
+
SQL
|
15
28
|
end
|
16
29
|
|
17
30
|
def create_tables
|
@@ -55,7 +68,7 @@ class RDBBackend < Backend
|
|
55
68
|
begin
|
56
69
|
while true
|
57
70
|
rows = 0
|
58
|
-
@db.fetch(
|
71
|
+
@db.fetch(@sql, now, now) {|row|
|
59
72
|
|
60
73
|
unless row[:created_at]
|
61
74
|
# finished/canceled task
|
data/lib/perfectqueue/version.rb
CHANGED
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: perfectqueue
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.7.
|
4
|
+
version: 0.7.11
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -9,11 +9,11 @@ authors:
|
|
9
9
|
autorequire:
|
10
10
|
bindir: bin
|
11
11
|
cert_chain: []
|
12
|
-
date: 2011-12-
|
12
|
+
date: 2011-12-18 00:00:00.000000000Z
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: sequel
|
16
|
-
requirement: &
|
16
|
+
requirement: &70154303421520 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 3.26.0
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *70154303421520
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: aws-sdk
|
27
|
-
requirement: &
|
27
|
+
requirement: &70154303420980 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,7 +32,7 @@ dependencies:
|
|
32
32
|
version: 1.1.1
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *70154303420980
|
36
36
|
description:
|
37
37
|
email: frsyuki@gmail.com
|
38
38
|
executables:
|