waterdrop 2.7.0.alpha1 → 2.7.0.alpha3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 938018b39bca57a68925d61e00a1347c34d3ad536fb73c910589065fc8e6cbca
4
- data.tar.gz: cdad580ebf6e91d51464fb2336f9c78896f3d1b03e96919463c99f141b5dc5ff
3
+ metadata.gz: 3a30c157d6e57db9b04d59f4478cff152bc07ea4ed6462c7b9654ffd695b3655
4
+ data.tar.gz: 96b6c4d6d9b00c24a1e4aef685335d46daf9bd536ad11ef5ddd983ad1eaa97bc
5
5
  SHA512:
6
- metadata.gz: 15e328bfe3135a14b3f61019185bcbb88c56ed2ed01e2a6523439229ee709940c0f38e4d2259e208c785fb06c2326fb290423c88d5213f730120b0a11ea8a152
7
- data.tar.gz: f6642bb5dbc1cb84e923bc5bdc43417bf3f88215eab4a537e3fa14290726e935a45aec0cf640962f3e48615310d639ed1f592cf324b9963e1ff1dc0dabb8cbe2
6
+ metadata.gz: d154491762173b4632d5294186dc97c835d90c6ed8bc3a229500ef698833f1b8304bd3c554c592af138d9fe56694dced89adb78bb4c64ea9ef00679209b9ac24
7
+ data.tar.gz: 721ab6abdfcdbc028200c6c1b8032f5036c661b1e02b1685f4733f9f060ee8465a53ea0e8e0e6c67c01ef59ce12d01aa499ba9406173aea4e20179f74ec5ec81
checksums.yaml.gz.sig CHANGED
Binary file
data/CHANGELOG.md CHANGED
@@ -7,6 +7,7 @@ This release contains **BREAKING** changes. Make sure to read and apply upgrade
7
7
  - **[Breaking]** Drop Ruby `2.7` support.
8
8
  - **[Breaking]** Change default timeouts so final delivery `message.timeout.ms` is less that `max_wait_time` so we do not end up with not final verdict.
9
9
  - **[Breaking]** Update all the time related configuration settings to be in `ms` and not mixed.
10
+ - **[Breaking]** Remove no longer needed `wait_timeout` configuration option.
10
11
  - [Enhancement] Introduce `instrument_on_wait_queue_full` flag (defaults to `true`) to be able to configure whether non critical (retryable) queue full errors should be instrumented in the error pipeline. Useful when building high-performance pipes with WaterDrop queue retry backoff as a throttler.
11
12
 
12
13
  ### Upgrade Notes
data/Gemfile.lock CHANGED
@@ -1,7 +1,7 @@
1
1
  PATH
2
2
  remote: .
3
3
  specs:
4
- waterdrop (2.7.0.alpha1)
4
+ waterdrop (2.7.0.alpha3)
5
5
  karafka-core (>= 2.4.0.alpha1, < 3.0.0)
6
6
  zeitwerk (~> 2.3)
7
7
 
@@ -6,7 +6,6 @@ en:
6
6
  deliver_format: must be boolean
7
7
  id_format: must be a non-empty string
8
8
  max_payload_size_format: must be an integer that is equal or bigger than 1
9
- wait_timeout_format: must be a numeric that is bigger than 0
10
9
  max_wait_timeout_format: must be an integer that is equal or bigger than 0
11
10
  kafka_format: must be a hash with symbol based keys
12
11
  kafka_key_must_be_a_symbol: All keys under the kafka settings scope need to be symbols
@@ -13,11 +13,11 @@ module WaterDrop
13
13
  # emit librdkafka statistics every five seconds. This is used in instrumentation.
14
14
  # When disabled, part of metrics will not be published and available.
15
15
  'statistics.interval.ms': 5_000,
16
- # We set it to a value that is lower than `max_wait_time` to have a final verdict upon sync
17
- # delivery
18
- 'message.timeout.ms': 55_000,
19
- # Must be less or equal to `message.timeout.ms` defaults
20
- 'transaction.timeout.ms': 45_000
16
+ # We set it to a value that is lower than `max_wait_timeout` to have a final verdict upon
17
+ # sync delivery
18
+ 'message.timeout.ms': 50_000,
19
+ # Must be more or equal to `message.timeout.ms` defaults
20
+ 'transaction.timeout.ms': 55_000
21
21
  }.freeze
22
22
 
23
23
  private_constant :KAFKA_DEFAULTS
@@ -51,10 +51,6 @@ module WaterDrop
51
51
  # option [Integer] Wait that long for the delivery report or raise an error if this takes
52
52
  # longer than the timeout ms.
53
53
  setting :max_wait_timeout, default: 60_000
54
- # option [Numeric] how long should we wait between re-checks on the availability of the
55
- # delivery report. In a really robust systems, this describes the min-delivery time
56
- # for a single sync message when produced in isolation
57
- setting :wait_timeout, default: 5 # 5 milliseconds
58
54
  # option [Boolean] should we upon detecting full librdkafka queue backoff and retry or should
59
55
  # we raise an exception.
60
56
  # When this is set to `true`, upon full queue, we won't raise an error. There will be error
@@ -17,7 +17,6 @@ module WaterDrop
17
17
  required(:deliver) { |val| [true, false].include?(val) }
18
18
  required(:max_payload_size) { |val| val.is_a?(Integer) && val >= 1 }
19
19
  required(:max_wait_timeout) { |val| val.is_a?(Numeric) && val >= 0 }
20
- required(:wait_timeout) { |val| val.is_a?(Numeric) && val.positive? }
21
20
  required(:kafka) { |val| val.is_a?(Hash) && !val.empty? }
22
21
  required(:wait_on_queue_full) { |val| [true, false].include?(val) }
23
22
  required(:wait_backoff_on_queue_full) { |val| val.is_a?(Numeric) && val >= 0 }
@@ -250,8 +250,7 @@ module WaterDrop
250
250
  def wait(handler)
251
251
  handler.wait(
252
252
  # rdkafka max_wait_timeout is in seconds and we use ms
253
- max_wait_timeout: @config.max_wait_timeout / 1_000.0,
254
- wait_timeout: @config.wait_timeout / 1_000.0
253
+ max_wait_timeout: @config.max_wait_timeout / 1_000.0
255
254
  )
256
255
  end
257
256
 
@@ -3,5 +3,5 @@
3
3
  # WaterDrop library
4
4
  module WaterDrop
5
5
  # Current WaterDrop version
6
- VERSION = '2.7.0.alpha1'
6
+ VERSION = '2.7.0.alpha3'
7
7
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: waterdrop
3
3
  version: !ruby/object:Gem::Version
4
- version: 2.7.0.alpha1
4
+ version: 2.7.0.alpha3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Maciej Mensfeld
metadata.gz.sig CHANGED
Binary file