racecar 1.2.1 → 1.3.0

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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 5d02ea2aa60d2c35df3d9b16571e1bc7552fc0125f7c17dce6c2599c322c0787
4
- data.tar.gz: 207a860bbe56b1e20f29d0a9d37cef2e47fa21b9232224cdfe38449ca16ec7f3
3
+ metadata.gz: f648450d1e12410d465bd1b72ee8e31d677e59be8002a6dd4122fe724a9ab59c
4
+ data.tar.gz: 598e77c323f7e09e2571a00bb84ec050ee0465a0b91c6a833658a23a0f26e204
5
5
  SHA512:
6
- metadata.gz: 5cc66fc91f13067bd7106f0d05af602e198f9c3bbb52943a0582fee255ff0bb7521b5c120ed3e519a46744475b41ed4979bb1a070255faec7ef00ef414e36f3b
7
- data.tar.gz: 3b931445476dd4f0cf1900b22c43cc912fae377942d1b5ee6c0f81e3b7cc9b148e3e828a0004171ce46c0c161e4f5754bdb6e00391bd1fbf824f0489643c0b56
6
+ metadata.gz: f0bfc386dd30b01328bb42435180f9118180eb78fb63a267ad6379150ff53df6da0524bef8e42cd53d25cad301c1e763a7c55328f43425efc1076eaebeddea14
7
+ data.tar.gz: fe73ab4baefbe01efca16b4f5b16b7379280a962a1829d857f850d56a0ef9da0b9fb5a2e6a367c308cf784abe3920bac0f5fd134242888067cb6079a6b812b39
data/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## racecar v1.3.0
6
+
7
+ * Support for `partitioner` configuration. (#268)
8
+
5
9
  ## racecar v1.2.1
6
10
 
7
11
  * Require king_konf v1.0 or higher.
data/README.md CHANGED
@@ -331,6 +331,7 @@ NOTE: `sasl_oauth_token_provider` only works using the `config/racecar.rb` confi
331
331
  These settings are related to consumers that _produce messages to Kafka_.
332
332
 
333
333
  * `producer_compression_codec` – If defined, Racecar will compress messages before writing them to Kafka. The codec needs to be one of `gzip`, `lz4`, or `snappy`, either as a Symbol or a String.
334
+ * `partitioner` - The algorithm used to calculate message destination partitions. `crc32` is the default, `murmur2` is also supported. Can be passed as symbol or a string.
334
335
 
335
336
  #### Datadog monitoring
336
337
 
@@ -115,6 +115,9 @@ module Racecar
115
115
  desc "The codec used to compress messages with"
116
116
  symbol :producer_compression_codec
117
117
 
118
+ desc "The partitioner used to calculate message destination partition"
119
+ symbol :partitioner, default: :crc32, allowed_values: [:crc32, :murmur2]
120
+
118
121
  desc "Enable Datadog metrics"
119
122
  boolean :datadog_enabled, default: false
120
123
 
@@ -36,7 +36,8 @@ module Racecar
36
36
  sasl_oauth_token_provider: config.sasl_oauth_token_provider,
37
37
  sasl_over_ssl: config.sasl_over_ssl,
38
38
  ssl_ca_certs_from_system: config.ssl_ca_certs_from_system,
39
- ssl_verify_hostname: config.ssl_verify_hostname
39
+ ssl_verify_hostname: config.ssl_verify_hostname,
40
+ partitioner: Kafka::Partitioner.new(hash_function: config.partitioner)
40
41
  )
41
42
 
42
43
  @consumer = kafka.consumer(
@@ -1,3 +1,3 @@
1
1
  module Racecar
2
- VERSION = "1.2.1"
2
+ VERSION = "1.3.0"
3
3
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: racecar
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.2.1
4
+ version: 1.3.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Daniel Schierbeck
@@ -9,7 +9,7 @@ authors:
9
9
  autorequire:
10
10
  bindir: exe
11
11
  cert_chain: []
12
- date: 2021-04-22 00:00:00.000000000 Z
12
+ date: 2021-11-08 00:00:00.000000000 Z
13
13
  dependencies:
14
14
  - !ruby/object:Gem::Dependency
15
15
  name: king_konf