-
Notifications
You must be signed in to change notification settings - Fork 882
Binary Producer with Span<T> #1603
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: master
Are you sure you want to change the base?
Conversation
@confluentinc It looks like @alec-anikin just signed our Contributor License Agreement. 👍 Always at your service, clabot |
thanks for the PR @alec-anikin - this will take a lot of effort to review and get merged (there's a good chance that in a PR this big we will have disagreements to work through). pretty sure I won't have time to get to it in the short term. do you have any numbers on performance/memory improvements? |
There are no performance improvements on the library side but clients can now allocate key/values on stack (stackallock), native memory(Marshal.AllocHGlobal) and ArrayPool. So they can get a lot of improvements in terms of memory allocations. |
Amazing work! |
@mhowlett this should be a high priority... Any plans to work on it? |
# Conflicts: # src/Confluent.Kafka/Producer.cs
# Conflicts: # src/Confluent.Kafka/Impl/SafeKafkaHandle.cs # src/Confluent.Kafka/Producer.cs
it's on the radar, and i'd like to be working on it, but some other things have been prioritized ahead of it. |
# Conflicts: # src/Confluent.Kafka/Impl/SafeKafkaHandle.cs
# Conflicts: # src/Confluent.Kafka/IProducer.cs
# Conflicts: # src/Confluent.Kafka/Impl/SafeKafkaHandle.cs # src/Confluent.Kafka/Producer.cs
No chance to merge it ever. Created separate library based on this MR. https://github.com/eventso/kafka-producer |
Thank you for your work @alec-anikin. |
As I understand it, Matt no longer supports this library. There are now other maintainers here and they ignore all external mr. |
Hi Matt,
I've prepared the draft for binary producer with span api.
I tried to minimize the number of changes to make it easier to review.