Kafka 事务性生产者 — read_committed 显示尽管中止的记录

突出的

我编写了这个简单的程序来测试 Kafka 中的新事务生产者:

package test;

import org.apache.kafka.clients.producer.KafkaProducer;
import org.apache.kafka.clients.producer.ProducerConfig;
import org.apache.kafka.clients.producer.ProducerRecord;

import java.util.Properties;


class kafkatest {

    public static void main(String[] args) {

        Properties props = new Properties();
        props.put(ProducerConfig.BOOTSTRAP_SERVERS_CONFIG, "localhost:9092");
        props.put(ProducerConfig.CLIENT_ID_CONFIG, "hello-world-producer");
        props.put(ProducerConfig.ENABLE_IDEMPOTENCE_CONFIG, true);
        props.put(ProducerConfig.TRANSACTIONAL_ID_CONFIG, "test");
        props.put(ProducerConfig.KEY_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");
        props.put(ProducerConfig.VALUE_SERIALIZER_CLASS_CONFIG, "org.apache.kafka.common.serialization.StringSerializer");

        KafkaProducer producer = new KafkaProducer(props);

        producer.initTransactions();
        producer.beginTransaction();

        producer.send(new ProducerRecord<>("topic", "hello", "world"));  
        producer.flush();

        producer.abortTransaction();

        producer.close();
    }
}

但是当我使用 with 时isolation.level=read_committed,该记录会出现:

--- ~ » kafka-console-consumer --bootstrap-server localhost:9092 \
        --topic topic \ 
        --from-beginning \ 
        --consumer-property isolation.level=read_committed

world

我错过了什么?

米凯尔豪斯

read_committed与控制台使用者一起使用,您需要指定--isolation-level选项:

kafka-console-consumer.sh --bootstrap-server localhost:9092 \
--topic topic --from-beginning --isolation-level=read_committed

否则,此选项默认为read_uncommitted并覆盖您通过 传递的值--consumer-property

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

即使未调用生产者提交,Kafka事务性生产者也会写消息

来自分类Dev

kafka幂等和事务性生产者设置之间的区别?

来自分类Dev

Spring Kafka:事务性生产者错误处理

来自分类Dev

Java Kafka生产者错误

来自分类Dev

生产者中的Kafka数据丢失

来自分类Dev

Kafka Cluster-生产者

来自分类Dev

Kafka - 生产者批次数

来自分类Dev

Kafka生产者批处理超时

来自分类Dev

无法使用 dockerized 生产者生产到 Kafka

来自分类Dev

Apache Kafka 消费者-生产者混淆

来自分类Dev

Kafka 2.3.0 生产者和消费者

来自分类常见问题

无法使用Springboot构建Kafka生产者

来自分类Dev

kafka生产者单元测试(java)

来自分类Dev

要在kafka中创建多少生产者?

来自分类Dev

Kafka生产者在网络分区期间的行为如何?

来自分类Dev

编译Kafka的自定义生产者

来自分类Dev

如何在Eclipse中运行kafka生产者?

来自分类Dev

Apache Kafka生产者经纪人连接

来自分类Dev

Kafka生产者创建主题,但无法发送消息

来自分类Dev

JSON列作为kafka生产者中的键

来自分类Dev

Spring Kafka:C ++生产者对ReplyingKafkaTemplate的答复

来自分类Dev

Kafka生产者将消息发布到辅助集群

来自分类Dev

同步Kafka生产者是否有任何例外

来自分类Dev

Kafka生产者在网络分区期间的行为如何?

来自分类Dev

可能的生产者将跟踪数据导入kafka

来自分类Dev

如何在Eclipse中运行kafka生产者?

来自分类Dev

Kafka生产者配置可立即发送消息

来自分类Dev

Kafka生产者创建主题,但无法发送消息

来自分类Dev

无法通过 Kafka 生产者读取文件