-
Notifications
You must be signed in to change notification settings - Fork 10
/
ChangeLog
422 lines (330 loc) · 10.3 KB
/
ChangeLog
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
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
Version 11.12.0
---------------
* Add a new flag for connectivity checks to an external server
Version 11.11.1
---------------
* Add keepalive config to gRPC dial parameters
Version 11.11.0
---------------
* Add a gRPC API to Lucidity which can be used to programmatically retrieve workers
* Mettle workers now report the hostname they're running on to Lucidity
Version 11.10.6
---------------
* Fix Elan's List endpoint to return true size for compressed blobs.
Version 11.10.5
---------------
* Populate partial ExecutedActionMetadata messages during execution
Version 11.10.4
--------------
* Check caches in the correct order.
Version 11.10.3
--------------
* Stop reserving rate limiter once past limit.
Version 11.10.2
--------------
* Add some tests to redis limiter.
* Don't take into account context canceled in limiter.
* Add option to set mininum number of idle connections to redis.
* Prevent limiter from counting its own errors towards rate limit.
Version 11.10.1
--------------
* Stop printing warnings when we get redis.Nil errors.
Version 11.10.0
--------------
* Move redis flags to a common package.
* Implement redis.Limiter and use that with the redis clients.
* Allow setting redis MaxSize in flags/environment.
* Make elan read from redis.
Version 11.9.12
--------------
* Make BatchDownload honour maxSize when uploading to redis.
Version 11.9.11
--------------
* Allow setting pool timeout on redis client.
Version 11.9.10
--------------
* Fix BatchRead that returns the wrong number of blobs.
Version 11.9.9
--------------
* Read from redis only blob size is below limit (and could be found in
Redis).
Version 11.9.8
--------------
* Allow specifying redis timeout through flags/environment.
Version 11.9.7
--------------
* Do not use redis clients when no URL is provided.
Version 11.9.6
--------------
* Refactor of redis client initialisation so it's easier to add new
options.
* Add option to set connection pool size in redis clients.
Version 11.9.5
--------------
* Register new redis_latency_ms metrics so it can be scraped.
Version 11.9.4
--------------
* Add metrics to measure latency with redis in mettle workers.
Version 11.9.3
--------------
* Avoid some cases of potential reordering of streamed events
Version 11.9.2
--------------
* Only clear J.current if we reuse an old job
Version 11.9.1
--------------
* Delete done jobs after resuption time has passed
* Delete any job after 2x expiry
* Don't set lastUpdate on streaming events
* Add warning logs when deleting jobs with listeners
Version 11.9.0
--------------
* Revert job deletion change to match previous behaviour
Version 11.8.5
--------------
* Fix bug for periodically deleting jobs
Version 11.8.4
--------------
* delete in memory jobs periodically in one routine
Version 11.7.4
--------------
* Set limiter before context in elan client
Version 11.7.3
--------------
* Bump timeout for uploadIfMissing to handle actions with large output
files
Version 11.7.2
--------------
* Lower case the service names for the GCP Cloud Profiler to work
Version 11.7.1
--------------
* Use the correct commit of the forked SDK
Version 11.7.0
--------------
* Update to Go 1.21
* Add support for Google Cloud Profiler
Version 11.6.3
--------------
* Start receiving from queue only once we got all inflight executions.
This should fix a potential data race on init.
Version 11.6.2
--------------
* Error token bucket was mistakenly consuming with `Allow()`. Refactored to make token bucket behaviour correct.
Version 11.6.1
--------------
* Randomly offset retentionTime and expiryTime for each job so the
goroutines don't all wake up at the same time. This is a bit of a hack,
a proper fix will be raised soon.
Version 11.6.0
--------------
* Add rate-limiter to Redis client so we don't fail slowly
Version 11.5.0
--------------
* Update gocloud to v0.34.0 to support setting max batchsize on topics
Version 11.4.2
--------------
* Fix bug in api server
Version 11.4.2
--------------
* Fix bug in api server
Version 11.4.0
--------------
* Add api server pubsub opts
* Add metrics for failed publish requests
* Add no execution in progress metric
* Add preresponse publish duration metric
Version 11.3.0
--------------
* Add a way to specify the batch size for the response subscription in
Mettle API
Version 11.2.2
--------------
* Correctly initialise Prometheus Vector metrics
Version 11.2.1
--------------
* Temporarily increase Elan ctx timeout
Version 11.2.0
--------------
* Pass CA cert file location to Redis instance
Version 11.1.0
--------------
* Add configurable number of pub/sub pollers, default to 10
Version 11.0.8
--------------
* renaming 'instance' label to something less generic
Version 11.0.7
--------------
* adding label to currentBuilds metric
Version 11.0.6
--------------
* correcting env keys for worker and api servers
Version 11.0.5
--------------
* Adding env keys to opts structs
Version 11.0.4
--------------
* Fixing bug in bytestream upload offset check (#246)
Version 11.0.3
--------------
* Change build to use go_repo instead of go_module
Version 11.0.2
--------------
* Implement path lookup according to REAPI v2.3
Version 11.0.1
--------------
* Restored previous permissive behaviour about symlinks pointing outside their directory
Version 11.0.0
--------------
* Updated to latest REAPI, especially for batch compression protocol
Version 11.0.0-beta.3
--------------
* [Purity] Collect all blobs first before marking them (and some debug logs)
Version 11.0.0-beta.2
--------------
* Stop deleting directory blobs when they are referenced in purity.
Version 11.0.0-beta.1
--------------
* Brought protocol in line with upstream's batch compression.
Version 10.7.0
--------------
* Compression alterations to move more inline with upstream (part the first)
Version 10.6.1
-------------
* Write the boolean logic for the missing blob check in Zeal correctly
Version 10.6.0
-------------
* Add ability for Zeal to always check the CAS for the ActionResult Output.
Version 10.5.1
-------------
* Load balance correctly
Version 10.5.0
-------------
* Allow load balancing in Flair server-hash.
Version 10.4.0
-------------
* Allow using read replicas with Redis client.
Version 10.3.9
-------------
* Use a tighter timeout when reading on Redis.
Version 10.3.8
-------------
* Remove worker name label from prometheus metrics
Version 10.3.7
-------------
* Add time to complete and total successful actions metrics to mettle api server
* Add total nacked messages to worker
* Reduce logging by flair, purity, worker and elan
Version 10.3.6
-------------
* Mark action digests in cas, purity.
Version 10.3.5
-------------
* Fix logs in Flair and Elan
Version 10.3.4
-------------
* Add some error logging to flair when failing to perform some actions.
* Added some debug level logging to elan to aid with debugging.
* Increase grace period for shutdowns in mettle and handle nack and acks correctly
* Returns DeadlineExceeded gRPC status code on action timeouts as required by
the specification.
Version 10.3.3
-------------
* Use workers name as a job label when pushing metrics to the gateway
Version 10.3.2
-------------
* Add workers name label to the blobNotFoundErrors counter
Version 10.3.1
-------------
* Fix metric cardinality
Version 10.3.0
-------------
* Only return delete errors in Elans gc
* Fix purity clean
Version 10.2.0
-------------
* Add timeouts to Elan's remote client
* Add metrics to Elan's remote client
Version 10.1.0
-------------
* Remove blob not found error from elan gc
* Improve errors returned from elan gc
* Fix concurrency bugs in purity
Version 10.0.1
-------------
* Add prefix to purity delete request as it's needed by flair
Version 10.0.0
-------------
* Restructure Purity so that it deletes action results before
marking their blobs as live.
* Add cache prefix field to purity action results proto
* Add cache prefix field to purity blobs proto
* Elan List() returns blobs with cache preflix field populated
* Wrap prom registerer to avoid collector collisions.
Version 9.9.4
-------------
* Return blob not found error from elan gc delete.
Version 9.9.3
-------------
* Reverted change from 9.8.2 to return with error connection option to
grpc dial.
Version 9.9.2
-------------
* Improvements to BatchUpdateBlobs fan-out logic in Flair.
Version 9.9.1
-------------
* Return writer close errors in uploadOne()
Version 9.9.0
-------------
* Pushed metrics now include the worker name as a label.
Version 9.8.2
-------------
* Add return with error connection option to grpc dial
Version 9.8.1
-------------
* Add logging on worker shutdown and shutting down queues
Version 9.8.0
-------------
* Add version labels to blob not found metric
* Devendorise pubsub
* Deadline extension on Pub/Sub queues performed immediately
* Update gRPC package to 1.48
* Update cloud-storage to 1.25
Version 9.7.11
-------------
* Fixing deadlocks in Purity
Version 9.7.10
-------------
* Fixing concurrent map writes in Purity
Version 9.7.9
-------------
* Stdout / stderr uploading is more robust against errors.
Version 9.7.8
-------------
* Fix in remote api SDK to not create recursive directory structures from empty directories.
Version 9.7.7
-------------
* Compute metrics at collection time.
Version 9.7.6
-------------
* Fixing immediate_shutdown flag
Version 9.7.5
-------------
* Binaries now statically linked again, hopefully for real this time
Version 9.7.4
-------------
* Binaries now statically linked again
Version 9.7.3
-------------
* Update lucidity metrics when marking worker as unhealthy
Version 9.7.2
-------------
* Allowing workers to wait for task completion before shutting down
Version 9.7.1
-------------
* Version bump to regenerate release
Version 9.7.0
-------------
* First version released with GitHub Actions
* Updated to Go and C as plugins
* Updated to latest Go version
* No functional changes.