karafka 2.4.1 → 2.4.2
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.
- checksums.yaml +4 -4
- checksums.yaml.gz.sig +4 -2
- data/CHANGELOG.md +8 -0
- data/Gemfile.lock +1 -1
- data/config/locales/errors.yml +1 -0
- data/lib/karafka/connection/client.rb +3 -1
- data/lib/karafka/pro/active_job/job_options_contract.rb +1 -0
- data/lib/karafka/templates/karafka.rb.erb +2 -2
- data/lib/karafka/version.rb +1 -1
- data.tar.gz.sig +0 -0
- metadata +2 -2
- metadata.gz.sig +0 -0
checksums.yaml
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
---
|
2
2
|
SHA256:
|
3
|
-
metadata.gz:
|
4
|
-
data.tar.gz:
|
3
|
+
metadata.gz: 5eb2aeb0bd3cd0d50d70b0fd792e8290315f3131222d3befab9b5a05bd478e07
|
4
|
+
data.tar.gz: 27b4d40fe18c3daf87ea3f2b601487d6cad5a766121374772179fc5fb3049f75
|
5
5
|
SHA512:
|
6
|
-
metadata.gz:
|
7
|
-
data.tar.gz:
|
6
|
+
metadata.gz: af5c4030ccd1f881558df342c3936152efc6183ccc6238246a327d6da8b716e65e3e56ec198a708b87f292bd01d9e426fb64b3c4b9a4f5b40111ee68795ec050
|
7
|
+
data.tar.gz: 7d04bb79ea03cc5eedf7a8e9ecd62abc0ff2b48aea2e4df929d691b931b728017adf843aec5c248a6d4e8b42dd1957c798e799b9df82ae009795ae6b414532ac
|
checksums.yaml.gz.sig
CHANGED
@@ -1,2 +1,4 @@
|
|
1
|
-
�
|
2
|
-
|
1
|
+
_�l*�}3r�;�z!����O4i�䪐U�m��.�Q}�N�*�<_�l�֑Ó|-n�M����\N��B(�Ot��>ß�(��2E%P�ɟY�l[����r��v�ͤ�ō�ܤN�
|
2
|
+
�}�F��Ј-Ó�����{L�&�.��"z:q�
|
3
|
+
P�0=�6J��,��٭qF�U��=�)��S�|��\ YW`��FdKT��=��*�� V��L
|
4
|
+
�����x�?�>��+g�,S�=�N����0�-��V��0�}��[�������U�� �[_�Hȳ-ൠo��{<�f��)�TI��{���2�g��?���{��6T�p�������x�`rg����ZD�}�蕽n�焫X�]�I�Qi}��V�
|
data/CHANGELOG.md
CHANGED
@@ -1,5 +1,9 @@
|
|
1
1
|
# Karafka framework changelog
|
2
2
|
|
3
|
+
## 2.4.2 (2024-05-14)
|
4
|
+
- [Enhancement] Validate ActiveJob adapter custom producer format.
|
5
|
+
- [Fix] Internal seek does not resolve the offset correctly for time based lookup.
|
6
|
+
|
3
7
|
## 2.4.1 (2024-05-10)
|
4
8
|
- [Enhancement] Allow for usage of producer variants and alternative producers with ActiveJob Jobs (Pro).
|
5
9
|
- [Enhancement] Support `:earliest` and `:latest` in `Karafka::Admin#seek_consumer_group`.
|
@@ -70,6 +74,10 @@ This release contains **BREAKING** changes. Make sure to read and apply upgrade
|
|
70
74
|
|
71
75
|
Available [here](https://karafka.io/docs/Upgrades-2.4/).
|
72
76
|
|
77
|
+
## 2.3.4 (2024-04-11)
|
78
|
+
|
79
|
+
- [Fix] Seek consumer group on a topic level is updating only recent partition.
|
80
|
+
|
73
81
|
## 2.3.3 (2024-02-26)
|
74
82
|
- [Enhancement] Routing based topics allocation for swarm (Pro)
|
75
83
|
- [Enhancement] Publish the `-1` shutdown reason status for a non-responding node in swarm.
|
data/Gemfile.lock
CHANGED
data/config/locales/errors.yml
CHANGED
@@ -144,6 +144,7 @@ en:
|
|
144
144
|
dispatch_many_method_format: needs to be either :produce_many_async or :produce_many_sync
|
145
145
|
partitioner_format: 'needs to respond to #call'
|
146
146
|
partition_key_type_format: 'needs to be either :key or :partition_key'
|
147
|
+
producer_format: 'needs to respond to #call'
|
147
148
|
|
148
149
|
test:
|
149
150
|
missing: needs to be present
|
@@ -402,7 +402,9 @@ module Karafka
|
|
402
402
|
# then seek to the appropriate message
|
403
403
|
# We set the timeout to 2_000 to make sure that remote clusters handle this well
|
404
404
|
real_offsets = @wrapped_kafka.offsets_for_times(tpl)
|
405
|
-
|
405
|
+
# We always ask for one partition, so result will contain array with only one element
|
406
|
+
# that is the partition we were interested it regardless its number
|
407
|
+
detected_partition = real_offsets.to_h.dig(message.topic, 0)
|
406
408
|
|
407
409
|
# There always needs to be an offset. In case we seek into the future, where there
|
408
410
|
# are no offsets yet, we get -1 which indicates the most recent offset
|
@@ -25,6 +25,7 @@ module Karafka
|
|
25
25
|
).fetch('en').fetch('validations').fetch('job_options')
|
26
26
|
end
|
27
27
|
|
28
|
+
optional(:producer) { |val| val.nil? || val.respond_to?(:call) }
|
28
29
|
optional(:partitioner) { |val| val.respond_to?(:call) }
|
29
30
|
optional(:partition_key_type) { |val| %i[key partition_key partition].include?(val) }
|
30
31
|
optional(:dispatch_method) do |val|
|
@@ -59,7 +59,7 @@ class KarafkaApp < Karafka::App
|
|
59
59
|
)
|
60
60
|
)
|
61
61
|
|
62
|
-
# You can subscribe to all consumer related errors and record/track
|
62
|
+
# You can subscribe to all consumer related errors and record/track them that way
|
63
63
|
#
|
64
64
|
# Karafka.monitor.subscribe 'error.occurred' do |event|
|
65
65
|
# type = event[:type]
|
@@ -68,7 +68,7 @@ class KarafkaApp < Karafka::App
|
|
68
68
|
# ErrorTracker.send_error(error, type, details)
|
69
69
|
# end
|
70
70
|
|
71
|
-
# You can subscribe to all producer related errors and record/track
|
71
|
+
# You can subscribe to all producer related errors and record/track them that way
|
72
72
|
# Please note, that producer and consumer have their own notifications pipeline so you need to
|
73
73
|
# setup error tracking independently for each of them
|
74
74
|
#
|
data/lib/karafka/version.rb
CHANGED
data.tar.gz.sig
CHANGED
Binary file
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: karafka
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 2.4.
|
4
|
+
version: 2.4.2
|
5
5
|
platform: ruby
|
6
6
|
authors:
|
7
7
|
- Maciej Mensfeld
|
@@ -35,7 +35,7 @@ cert_chain:
|
|
35
35
|
AnG1dJU+yL2BK7vaVytLTstJME5mepSZ46qqIJXMuWob/YPDmVaBF39TDSG9e34s
|
36
36
|
msG3BiCqgOgHAnL23+CN3Rt8MsuRfEtoTKpJVcCfoEoNHOkc
|
37
37
|
-----END CERTIFICATE-----
|
38
|
-
date: 2024-05-
|
38
|
+
date: 2024-05-14 00:00:00.000000000 Z
|
39
39
|
dependencies:
|
40
40
|
- !ruby/object:Gem::Dependency
|
41
41
|
name: base64
|
metadata.gz.sig
CHANGED
Binary file
|