karafka-rdkafka 0.19.2.rc1 → 0.19.3

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: d274be74f9ce13d34e8b4151809a030c7965328f39929a7dd9edcda480c38b82
4
- data.tar.gz: 2a31bab8e00b6b37479e65d717ba797bd1fa5588f6f22304396bd0f760e08782
3
+ metadata.gz: 2ef95cc0dbb2fcb8affb287632a70ab25edbeeddb62eec54089640d74298aa51
4
+ data.tar.gz: dd0250226748dbcbfb235dfa61122cc01519941059eea4221acbd6063b08bfee
5
5
  SHA512:
6
- metadata.gz: 21b2985059a41f125539f3921b81c2768da2b48a86e1370e81925641dfd353fa36c9f8f0f10cb5f60972eb6ad544b210e566f0f2f9f7fcc27680b64fe6ddff20
7
- data.tar.gz: 26c74433fa18d9ffdd1e516bcaa9a8fa3c17cbbf1afe7efb2f749a8219d2ce5540adf440635ce1bf104d1e7776ccd01a598b2ff3e1d2570eb29de9e2b079fe08
6
+ metadata.gz: 18e426c7c325280b3cb1e5d5325c1afc21a0ee12de4bf10bc6420ab55bc0c4d3aaf1f565167867ba0b218f2ad77d462a3bfb53d0cad8be94f129060d7fc80258
7
+ data.tar.gz: c4bad87e64c15ee49fbccdad9b4e64808ac26465c83b15254e1f437233da2e9268838336477cfffcb380ad3ab8a9c14d06b1128c178206da90bf7ee8a24b6a64
checksums.yaml.gz.sig CHANGED
Binary file
@@ -51,7 +51,7 @@ jobs:
51
51
  docker compose up -d || (sleep 5 && docker compose up -d)
52
52
 
53
53
  - name: Set up Ruby
54
- uses: ruby/setup-ruby@eaecf785f6a34567a6d97f686bbb7bccc1ac1e5c # v1.237.0
54
+ uses: ruby/setup-ruby@84684c07c1965536eb4802c8daf1a77968df0cb1 # v1.239.0
55
55
  with:
56
56
  ruby-version: ${{matrix.ruby}}
57
57
  bundler-cache: true
@@ -86,7 +86,7 @@ jobs:
86
86
  - uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
87
87
 
88
88
  - name: Set up Ruby
89
- uses: ruby/setup-ruby@eaecf785f6a34567a6d97f686bbb7bccc1ac1e5c # v1.237.0
89
+ uses: ruby/setup-ruby@84684c07c1965536eb4802c8daf1a77968df0cb1 # v1.239.0
90
90
  with:
91
91
  ruby-version: ${{matrix.ruby}}
92
92
  bundler-cache: false
data/.ruby-version CHANGED
@@ -1 +1 @@
1
- 3.4.3
1
+ 3.4.4
data/CHANGELOG.md CHANGED
@@ -1,8 +1,13 @@
1
1
  # Rdkafka Changelog
2
2
 
3
- ## 0.19.2 (Unreleased)
3
+ ## 0.19.3 (2025-05-23)
4
+ - [Enhancement] Include broker message in the error full message if provided.
5
+
6
+ ## 0.19.2 (2025-05-20)
4
7
  - [Enhancement] Replace TTL-based partition count cache with a global cache that reuses `librdkafka` statistics data when possible.
5
8
  - [Enhancement] Roll out experimental jruby support.
9
+ - [Fix] Fix issue where post-closed producer C topics refs would not be cleaned.
10
+ - [Fix] Fiber causes Segmentation Fault.
6
11
 
7
12
  ## 0.19.1 (2025-04-07)
8
13
  - [Enhancement] Support producing and consuming of headers with mulitple values (KIP-82).
data/README.md CHANGED
@@ -163,9 +163,7 @@ bundle exec rake produce_messages
163
163
 
164
164
  | rdkafka-ruby | librdkafka | patches |
165
165
  |-|-|-|
166
- | 0.19.2 (Unreleased) | 2.8.0 (2025-01-07) | yes |
167
- | 0.19.1 (2025-04-07) | 2.8.0 (2025-01-07) | yes |
168
- | 0.19.0 (2025-01-20) | 2.8.0 (2025-01-07) | yes |
166
+ | 0.19.x (2025-01-20) | 2.8.0 (2025-01-07) | yes |
169
167
  | 0.18.0 (2024-11-26) | 2.6.1 (2024-11-18) | yes |
170
168
  | 0.17.4 (2024-09-02) | 2.5.3 (2024-09-02) | yes |
171
169
  | 0.17.0 (2024-08-01) | 2.5.0 (2024-07-10) | yes |
data/lib/rdkafka/error.rb CHANGED
@@ -126,7 +126,14 @@ module Rdkafka
126
126
  else
127
127
  ''
128
128
  end
129
- "#{message_prefix_part}#{Rdkafka::Bindings.rd_kafka_err2str(@rdkafka_response)} (#{code})"
129
+
130
+ err_str = Rdkafka::Bindings.rd_kafka_err2str(@rdkafka_response)
131
+ base = "#{message_prefix_part}#{err_str} (#{code})"
132
+
133
+ return base if broker_message.nil?
134
+ return base if broker_message.empty?
135
+
136
+ "#{base}\n#{broker_message}"
130
137
  end
131
138
 
132
139
  # Whether this error indicates the partition is EOF.
@@ -126,9 +126,13 @@ module Rdkafka
126
126
  # and would continue to run, trying to destroy inner twice
127
127
  return unless @inner
128
128
 
129
+ yield if block_given?
130
+
129
131
  Rdkafka::Bindings.rd_kafka_destroy(@inner)
130
132
  @inner = nil
131
133
  @opaque = nil
134
+ @poll_mutex.unlock
135
+ @poll_mutex = nil
132
136
  end
133
137
  end
134
138
  end
@@ -1,7 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module Rdkafka
4
- VERSION = "0.19.2.rc1"
4
+ VERSION = "0.19.3"
5
5
  LIBRDKAFKA_VERSION = "2.8.0"
6
6
  LIBRDKAFKA_SOURCE_SHA256 = "5bd1c46f63265f31c6bfcedcde78703f77d28238eadf23821c2b43fc30be3e25"
7
7
  end
@@ -1155,4 +1155,19 @@ describe Rdkafka::Producer do
1155
1155
  end
1156
1156
  end
1157
1157
  end
1158
+
1159
+ describe 'with other fiber closing' do
1160
+ context 'when we create many fibers and close producer in some of them' do
1161
+ it 'expect not to crash ruby' do
1162
+ 10.times do |i|
1163
+ producer = rdkafka_producer_config.producer
1164
+
1165
+ Fiber.new do
1166
+ GC.start
1167
+ producer.close
1168
+ end.resume
1169
+ end
1170
+ end
1171
+ end
1172
+ end
1158
1173
  end
data.tar.gz.sig CHANGED
Binary file
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: karafka-rdkafka
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.19.2.rc1
4
+ version: 0.19.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Thijs Cadier
@@ -289,7 +289,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
289
289
  - !ruby/object:Gem::Version
290
290
  version: '0'
291
291
  requirements: []
292
- rubygems_version: 3.6.7
292
+ rubygems_version: 3.6.9
293
293
  specification_version: 4
294
294
  summary: The rdkafka gem is a modern Kafka client library for Ruby based on librdkafka.
295
295
  It wraps the production-ready C client using the ffi gem and targets Kafka 1.0+
metadata.gz.sig CHANGED
Binary file