-
Notifications
You must be signed in to change notification settings - Fork 6
/
Changes
239 lines (198 loc) · 7.83 KB
/
Changes
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
Revision history for Redis::JobQueue package
1.19 Fri Feb 24 2017
CHANGES:
- Ability to force re-connection with Redis on error ('reconnect_on_error' attribute).
- $DEFAULT_CONNECTION_TIMEOUT, $DEFAULT_OPERATION_TIMEOUT constants added.
- connection_timeout, operation_timeout attributes added.
- Added the service module Redis::JobQueue::Util.
- Attempt to protect against used_memory > maxmemory.
- Added the 'queue_length' method.
1.18 Thu May 31 2016
BUGFIXES:
- Fix MANIFEST.
1.17 Thu May 26 2016
BUGFIXES:
- Tests corrected.
- Require perl 5.10 core modules version.
- Data::Dumper 'Sparseseen' method not used now.
1.16 Thu Sep 03 2015
CHANGES:
- In the parameters of the constructor 'redis' may be either a Redis object
or a server string or a hash reference of parameters to create a Redis object.
- Redis::JobQueue does not close connection to redis server (including '->quit' method)
if it was provided by user.
1.15 Tue Oct 28 2014
CHANGES:
- Time::HiRes::time is used for storing internal attributes.
- Redis::JobQueue->queue_status returns a floating seconds since the epoch
for the following information related to the queue:
max_job_age, min_job_age, lifetime.
- The Redis::JobQueue->quit method does not close connection to Redis during
global destruction phase (Perl version 5.14 and above).
FIXES:
- Fixed test 't/01_JobQueue/16_utf8.t'
1.13 Tue May 27 2014
CHANGES:
- Re-factoring of tests.
1.12 Thu May 23 2014
CHANGES:
- Added argument 'check_maxmemory' to the Redis::JobQueue->new
(thanks to Danny Sterne).
1.11 Fri Mar 14 2014
CHANGES:
- Change the port used for testing.
1.10 Thu Feb 20 2014
CHANGES:
- Small test improvement.
1.09 Fri Jan 10 2014
CHANGES:
- Added method Redis::JobQueue->get_next_job_id.
1.08 Fri Nov 15 2013
CHANGES:
- Deleted argument 'encoding' from the Redis::JobQueue->new
(Starting with version 1.963, Redis module doesn't support encoding).
1.07 Mon Oct 28 2013
CHANGES:
- Added to META.yml the list of the modules provided by this distribution.
1.06 Fri Oct 25 2013
CHANGES:
- 'delete_job' removes job id record from the queue list.
This helps to properly diagnose cases when job data was removed by Redis OOM handler
rather than explicitly deleted by user.
- Use single hash for storing all job data on Redis server.
- Removed 'NS_METADATA_SUFFIX' constant.
FIXES:
- Fix runtime loading of Test::*
1.05 Wed Sep 18 2013
CHANGES:
- Use Try::Tiny for proper preservation of $@ .
1.04 Thu Sep 05 2013
CHANGES:
- Method 'clear_variability' renamed to 'clear_modified'.
- Redis server updates only updated data, if you change the metadata,
not all of the metadata.
- Change the 'completed' attribute sets 'failed' to 0,
the change 'failed' sets 'completed' to 0.
The attributes 'completed' and 'failed' are mutually exclusive.
- Method 'update_job' accesses the Redis server only if there is some
data to update.
FIXES:
- $@ is localized before we attempt to catch an exception.
1.03 Tue Jun 25 2013
FIXES:
- Added description of the Redis::JobQueue::Job attributes:
'progress', 'message'.
1.02 Mon Jun 17 2013
CHANGES:
- Added standard job field: Time when job was 'failed' (user settable).
- Added a method 'last_error'.
FIXES:
- 'add_job', 'update_job', 'load_job' not cause 'clear_variability' for metadata.
1.01 Tue May 28 2013
CHANGES:
- Minor changes in documentation.
FIXES:
- Checking OS in Makefile.PL
Tests hang on Windows.
1.00 Mon May 07 2013
!!! This is a major upgrade that changes API. It's strongly advised to study
revised documentation and update your code where necessary !!!
CHANGES:
- Needs Redis server version 2.6 or higher as module uses Redis Lua scripting.
- Improved handling of transactions.
- Method Redis::JobQueue::Job->job_attributes returns a sorted list.
- Fields 'result' and 'workload':
It is possible to use any data structure (SCALAR, HASH, ARRAY, OBJECT).
It is automatically serialized.
Allowable size of the data is determined based on the size of the
serialized string.
- Added standard job fields:
Times when job was: 'created', 'started', 'completed', 'updated'
(user settable),
Job 'progress' (0...1) and arbitrary status 'message'.
Appropriate methods added.
- The job 'updated' field automatically changes with every change to a job.
- Added a method 'Redis::JobQueue::Job->elapsed'.
- A set of constants to reflect job status:
CREATED, WORKING, FAILED, COMPLETED, the user can specify own value
for status.
Moved from module Redis::JobQueue to module Redis::JobQueue::Job.
- Added working with the jobs metadata
(additional information related to the job):
It is automatically serialized.
Methods 'Redis::JobQueue::Job->meta_data',
'Redis::JobQueue->get_job_meta_fields'.
- Constant MAX_DATASIZE moved to module Redis::JobQueue.
- No longer used constants EMAXMEMORYPOLICY, STATUS_DELETED, EXPIRE_DELETED.
- Added a method 'queue_status' for monitoring the state of the queue.
- Method 'get_job_status' removed.
Method 'get_job_data' added instead for receiving data from the standard
set of fields.
- Method 'delete_job' removes Redis data structures that are associated
with the job.
- Method 'get_jobs' renamed to 'get_job_ids'.
Jobs can be filtered by queue name or status.
- Method 'add_job' updates Redis::JobQueue::Job object, if it was passed
as the first argument.
- 'encoding => undef' for Redis used, if 'new' invoked without
the first argument being an object of 'Redis::JobQueue' or 'Redis' class.
- Exception for not serialized utf8 text fields, when Redis object set
to 'encoding => undef'.
- Added test using 'utf8' data (t/01_JobQueue/t_utf8.t).
- Added new functionality testing.
- Change to user-friendly constant names.
0.16 Tue Mar 12 2013
CHANGES:
- Added method 'server'
0.15 Tue Mar 12 2013
BUGFIXES:
- Attribute 'attribute' renamed 'meta_data'
0.14 Mon Mar 11 2013
CHANGES:
- Attribute 'attribute' renamed 'meta_data'
- Methods 'check_job_...' renamed 'get_job_...'
0.13 Sat Mar 09 2013
CHANGES:
- Attribute 'attribute' in the structure of jobs added
0.12 Fri Mar 08 2013
CHANGES:
- The tests are executed even if the installed Redis server is not running
0.11 Fri Mar 08 2013
CHANGES:
- Added method 'ping'
0.10 Mon Feb 26 2013
CHANGES:
- Error codes returned by last_errorcode method complies with an array
of descriptions @Redis::JobQueue::ERROR
0.09 Wed Feb 13 2013
CHANGES:
- 'new' indirectly detects no connection to the Redis server
0.08 Tue Dec 18 2012
CHANGES:
- The 'job' attribute of the job performs only informational role
- Checking Perl version in Makefile.PL
0.07 Wed Sep 26 2012
CHANGES:
- The 'get_next_job' can take a queue name or a reference to an array of queue names
0.06 Thu Sep 13 2012
BUGFIXES:
- The 'get_next_job' method work correctly when 'blocking' is true
0.05 Mon Sep 10 2012
CHANGES:
- Author and release tests moved to 'xt' directory
BUGFIXES:
- Eliminate unnecessary Data::UUID object construction
0.04 Sat Sep 01 2012
BUGFIXES:
- t/00_Job/01_new.t
Disable checking leads to "Out of memory!" for systems with limited memory
0.03 Thu Aug 30 2012
CHANGES:
- Added test 't/94_fixme.t'
BUGFIXES:
- Fixed version number to 'use 5.010'
0.02 Tue Aug 28 2012
BUGFIXES:
- Minor changes in documentation
0.01 Mon Aug 27 2012
- Original version