quebert 1.0.4 → 1.0.5
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/lib/quebert/controller/beanstalk.rb +5 -0
- data/lib/quebert/job.rb +2 -1
- data/lib/quebert/version.rb +1 -1
- metadata +73 -60
@@ -58,6 +58,11 @@ module Quebert
|
|
58
58
|
rescue Job::Timeout => e
|
59
59
|
retry_with_delay
|
60
60
|
raise e
|
61
|
+
rescue Job::Retry => e
|
62
|
+
# The difference between the Retry and Timeout class is that
|
63
|
+
# Retry does not log an exception where as Timeout does
|
64
|
+
log "Manually retrying with delay"
|
65
|
+
retry_with_delay
|
61
66
|
rescue Exception => e
|
62
67
|
beanstalk_job.bury
|
63
68
|
log "Exception caught on perform. Job buried. #{e.inspect}", :error
|
data/lib/quebert/job.rb
CHANGED
@@ -14,7 +14,7 @@ module Quebert
|
|
14
14
|
# A buffer time in seconds added to the Beanstalk TTR for Quebert to do its own job cleanup
|
15
15
|
# The job will perform based on the Beanstalk TTR, but Beanstalk hangs on to the job just a
|
16
16
|
# little longer so that Quebert can bury the job or schedule a retry with the appropriate delay
|
17
|
-
QUEBERT_TTR_BUFFER =
|
17
|
+
QUEBERT_TTR_BUFFER = 5
|
18
18
|
|
19
19
|
NotImplemented = Class.new(StandardError)
|
20
20
|
|
@@ -24,6 +24,7 @@ module Quebert
|
|
24
24
|
Delete = Class.new(Action)
|
25
25
|
Release = Class.new(Action)
|
26
26
|
Timeout = Class.new(Action)
|
27
|
+
Retry = Class.new(Action)
|
27
28
|
|
28
29
|
def initialize(*args)
|
29
30
|
opts = args.last.is_a?(::Hash) ? args.pop : nil
|
data/lib/quebert/version.rb
CHANGED
metadata
CHANGED
@@ -1,74 +1,78 @@
|
|
1
|
-
--- !ruby/object:Gem::Specification
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
2
|
name: quebert
|
3
|
-
version: !ruby/object:Gem::Version
|
4
|
-
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
hash: 29
|
5
5
|
prerelease:
|
6
|
+
segments:
|
7
|
+
- 1
|
8
|
+
- 0
|
9
|
+
- 5
|
10
|
+
version: 1.0.5
|
6
11
|
platform: ruby
|
7
|
-
authors:
|
12
|
+
authors:
|
8
13
|
- Brad Gessler
|
9
14
|
- Steel Fu
|
10
15
|
- Jeff Vyduna
|
11
16
|
autorequire:
|
12
17
|
bindir: bin
|
13
18
|
cert_chain: []
|
14
|
-
|
15
|
-
|
16
|
-
|
19
|
+
|
20
|
+
date: 2012-05-31 00:00:00 Z
|
21
|
+
dependencies:
|
22
|
+
- !ruby/object:Gem::Dependency
|
17
23
|
name: json
|
18
|
-
requirement: !ruby/object:Gem::Requirement
|
19
|
-
none: false
|
20
|
-
requirements:
|
21
|
-
- - ! '>='
|
22
|
-
- !ruby/object:Gem::Version
|
23
|
-
version: '0'
|
24
|
-
type: :runtime
|
25
24
|
prerelease: false
|
26
|
-
|
25
|
+
requirement: &id001 !ruby/object:Gem::Requirement
|
27
26
|
none: false
|
28
|
-
requirements:
|
29
|
-
- -
|
30
|
-
- !ruby/object:Gem::Version
|
31
|
-
|
32
|
-
|
33
|
-
|
34
|
-
|
35
|
-
none: false
|
36
|
-
requirements:
|
37
|
-
- - ! '>='
|
38
|
-
- !ruby/object:Gem::Version
|
39
|
-
version: '0'
|
27
|
+
requirements:
|
28
|
+
- - ">="
|
29
|
+
- !ruby/object:Gem::Version
|
30
|
+
hash: 3
|
31
|
+
segments:
|
32
|
+
- 0
|
33
|
+
version: "0"
|
40
34
|
type: :runtime
|
35
|
+
version_requirements: *id001
|
36
|
+
- !ruby/object:Gem::Dependency
|
37
|
+
name: beanstalk-client
|
41
38
|
prerelease: false
|
42
|
-
|
39
|
+
requirement: &id002 !ruby/object:Gem::Requirement
|
43
40
|
none: false
|
44
|
-
requirements:
|
45
|
-
- -
|
46
|
-
- !ruby/object:Gem::Version
|
47
|
-
|
48
|
-
|
41
|
+
requirements:
|
42
|
+
- - ">="
|
43
|
+
- !ruby/object:Gem::Version
|
44
|
+
hash: 3
|
45
|
+
segments:
|
46
|
+
- 0
|
47
|
+
version: "0"
|
48
|
+
type: :runtime
|
49
|
+
version_requirements: *id002
|
50
|
+
- !ruby/object:Gem::Dependency
|
49
51
|
name: rspec
|
50
|
-
requirement: !ruby/object:Gem::Requirement
|
51
|
-
none: false
|
52
|
-
requirements:
|
53
|
-
- - '='
|
54
|
-
- !ruby/object:Gem::Version
|
55
|
-
version: 2.7.0
|
56
|
-
type: :development
|
57
52
|
prerelease: false
|
58
|
-
|
53
|
+
requirement: &id003 !ruby/object:Gem::Requirement
|
59
54
|
none: false
|
60
|
-
requirements:
|
61
|
-
- -
|
62
|
-
- !ruby/object:Gem::Version
|
55
|
+
requirements:
|
56
|
+
- - "="
|
57
|
+
- !ruby/object:Gem::Version
|
58
|
+
hash: 19
|
59
|
+
segments:
|
60
|
+
- 2
|
61
|
+
- 7
|
62
|
+
- 0
|
63
63
|
version: 2.7.0
|
64
|
+
type: :development
|
65
|
+
version_requirements: *id003
|
64
66
|
description: A worker queue framework built around beanstalkd
|
65
|
-
email:
|
67
|
+
email:
|
66
68
|
- brad@bradgessler.com
|
67
|
-
executables:
|
69
|
+
executables:
|
68
70
|
- quebert
|
69
71
|
extensions: []
|
72
|
+
|
70
73
|
extra_rdoc_files: []
|
71
|
-
|
74
|
+
|
75
|
+
files:
|
72
76
|
- .document
|
73
77
|
- .gitignore
|
74
78
|
- .rbenv-version
|
@@ -119,29 +123,38 @@ files:
|
|
119
123
|
- spec/worker_spec.rb
|
120
124
|
homepage: http://github.com/polleverywhere/quebert
|
121
125
|
licenses: []
|
126
|
+
|
122
127
|
post_install_message:
|
123
128
|
rdoc_options: []
|
124
|
-
|
129
|
+
|
130
|
+
require_paths:
|
125
131
|
- lib
|
126
|
-
required_ruby_version: !ruby/object:Gem::Requirement
|
132
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
127
133
|
none: false
|
128
|
-
requirements:
|
129
|
-
- -
|
130
|
-
- !ruby/object:Gem::Version
|
131
|
-
|
132
|
-
|
134
|
+
requirements:
|
135
|
+
- - ">="
|
136
|
+
- !ruby/object:Gem::Version
|
137
|
+
hash: 3
|
138
|
+
segments:
|
139
|
+
- 0
|
140
|
+
version: "0"
|
141
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
133
142
|
none: false
|
134
|
-
requirements:
|
135
|
-
- -
|
136
|
-
- !ruby/object:Gem::Version
|
137
|
-
|
143
|
+
requirements:
|
144
|
+
- - ">="
|
145
|
+
- !ruby/object:Gem::Version
|
146
|
+
hash: 3
|
147
|
+
segments:
|
148
|
+
- 0
|
149
|
+
version: "0"
|
138
150
|
requirements: []
|
151
|
+
|
139
152
|
rubyforge_project: quebert
|
140
|
-
rubygems_version: 1.8.
|
153
|
+
rubygems_version: 1.8.22
|
141
154
|
signing_key:
|
142
155
|
specification_version: 3
|
143
156
|
summary: A worker queue framework built around beanstalkd
|
144
|
-
test_files:
|
157
|
+
test_files:
|
145
158
|
- spec/async_sender_spec.rb
|
146
159
|
- spec/backend_spec.rb
|
147
160
|
- spec/command_line_runner_spec.rb
|