![]() Add new ways to configure headers and kafka key (see Message Headers and Kafka Partitioning and Message Key).Invoke broker callbacks during the application shutdown to allow custom code to be run when disconnecting.Allow filtering the endpoints targeted by the ConsumersHealthCheck (see AddConsumersCheck).Add optional friendly name to the endpoints (see IEndpointBuilder.Observe a grace period in the ConsumersHealthCheck to prevent false positives during a normal Kafka rebalance.Allow multiple calls to IKafkaConsumerEndpointBuilder.Configure or IKafkaProducerEndpointBuilder.Configure for the same endpoint.Add new Kafka partition EOF callback to be notified when the end of a partition is reached by the consumer (see Kafka Events and IKafkaPartitionEofCallback).Ignore null or empty Kafka key in producer. ![]() Invoke the Kafka partition EOF callback for all connected consumers.Add new AddInbound overloads specifying message type for a more compact configuration when using the typed deserializer (see Serialization).Add message validation for both producer and consumer (see Message Validation).Support multiple brokers (with overlapping topic names) in mocked Kafka and MQTT.Optimize in-memory mocked Kafka (avoid spawning too many threads).Fix AddHeaders and WithKafkaKey not being correctly invoked by all IProducer.Produce and IProducer.ProducerAsync overloads.Support encryption key rotation (see Encryption).Allow max retries specification and error policies chains with MQTT V3.Handle edge cases related to MQTT acknowledgment timeout in MqttConsumer.Log MqttClient internal events (see Logging).Fully validate messages, including nested objects.Ensure each consumed message gets a unique traceId (when the traceparent header is not present).Support shared sessions in mocked MQTT broker.Improve MQTT connection related logs (info for successful reconnect and add broker name to log messages).Throw TimeoutException from KafkaTestingHelper and MqttTestingHelper.Add overload for Publish method in the error policies that forwards the exception as well as the envelope.Allow filters such as the KafkaGroupIdFilterAttribute or MqttClientIdFilterAttribute to be added to the subscribers at runtime via the configuration API (see Multiple Consumer Groups (in same process) and Multiple Clients (in same process)).Enrich Kafka messages moved by the MoveMessageErrorPolicy adding some extra headers containing some information about the source topic, partition, offset, etc.Handle IAsyncEnumerable returned by the subscriber and republished the contained messages.Handle race condition in BatchSequence with timeout.Fix possible race condition in consumer pipeline.Skip chunking when processing single chunk messages.Implement basic support for Kafka transactions via KafkaTransactionalProducer (Note: this is just a first step and a more comprehensive implementation is planned for the upcoming release 4.0.0).Improve message streams abort process to avoid first chance exceptions (e.g.Correctly invoke the IKafkaOffsetCommittedCallback when auto commit is disabled.Support topic names with symbols (e.g.Improve error handling during connection to MQTT.Prevent errors when the IKafkaPartitionsRevokedCallback is invoked during application shutdown.Fix error policies not being triggered consistently when batch consuming.Topic name resolvers can be used to filter the messages to be produce: returning null will discard the message.Some breaking changes in MQTTnet 4 are reflected into Silverback.Disable server-side offset commit in KafkaConsumer when GroupId is not set. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |