Size: a a a

2021 February 01

AM

Alexey Melchakov in pro.kafka
Подскажите, вот на этой страничке выложно видео с  Kafka Summit,
нажимаю play и нечего не происходи - плеер пропадает.
Доступ к видео ограничен? Его как то можно получить?
https://www.confluent.io/resources/kafka-summit-2020/performance-tuning-rocksdb-for-kafka-streams-state-stores/
источник

AU

Andrey Ustinov in pro.kafka
добрый день, а есть какое-то объяснение тому что брокер никак не может устранить under-replicated partition при том что в топик то не пишут? и вообще это явление как-то рандомно возникает) игрался кто с параметрами replica.lag.time.max.ms?
источник

И

Иван in pro.kafka
Добрый день, подскажите как решить проблему
кафка 2.12-2.3.0 x 5 брокеров
топик 10 партиций x replication factor = 3

1) все работает штатно
2) последовательно выключил systemctl stop kafka 1,2,3
3) включил обратно
4) кафка начала сыпать ошибками для некоторых партиций

Типовая ситуация:
- партиция расположена на 1,2,3 брокере
- лидер у такой партиции 3-ий (позже всех выключился)
- in sync только 3-ий брокер

ошибки на 1,2-ом  такие:
org.apache.kafka.common.errors.UnknownTopicOrPartitionException: This server does not host this topic-partition.
[2021-02-01 13:41:08,164] ERROR [ReplicaFetcher replicaId=2, leaderId=3, fetcherId=0] Error for partition test-7 at offset 36547 (kafka.server.ReplicaFetcherThread)

одновременно с этим на 3-ем
[2021-02-01 13:49:19,930] ERROR [KafkaApi-3] Number of alive brokers '0' does not meet the required replication factor '3' for the offsets topic (configured via 'offsets.topic.replication.factor'). This error can be ignored if the cluster is starting up and not all brokers are up yet. (kafka.server.KafkaApis)

со стороны клиентов это выглядит так:
 Error while fetching metadata with correlation id 3 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)

Сама по себе ошибка не проходит
источник

VG

Vik Gamov in pro.kafka
Alexey Melchakov
Подскажите, вот на этой страничке выложно видео с  Kafka Summit,
нажимаю play и нечего не происходи - плеер пропадает.
Доступ к видео ограничен? Его как то можно получить?
https://www.confluent.io/resources/kafka-summit-2020/performance-tuning-rocksdb-for-kafka-streams-state-stores/
Ad blocker отключи
источник

VG

Vik Gamov in pro.kafka
Alexander Ryzhenko
Сам докопался, что проблема в KEY_FORMAT.
При создании стрима я его не указываю и он подставляется деволтным KAFKA. Дебезиум же пишет в ключ JSON, например:

{"OrderID":42511627}

но создание с KEY_FORMAT='JSON' приводит к другой ошибке при попытке чтения из стрима:

[2021-02-01 10:41:04,832] ERROR {"type":0,"deserializationError":{"target":"key","errorMessage":"Failed to deserialize key from topic: orders. Can't convert type. sourceType: ObjectNode, requiredType: INTEGER, path: $","recordB64":null,"cause":["Can't convert type. sourceType: ObjectNode, requiredType: INTEGER, path: $","Can't convert type. sourceType: ObjectNode, requiredType: INTEGER"],"topic»:»orders»},»recordProcessingError":null,"productionError":null,"serializationError":null,"kafkaStreamsThreadError":null} (processing.6302525988885084951.KsqlTopic.Source.deserializer:44)
А что если long сделать orderid?
источник

AU

Andrey Ustinov in pro.kafka
Иван
Добрый день, подскажите как решить проблему
кафка 2.12-2.3.0 x 5 брокеров
топик 10 партиций x replication factor = 3

1) все работает штатно
2) последовательно выключил systemctl stop kafka 1,2,3
3) включил обратно
4) кафка начала сыпать ошибками для некоторых партиций

Типовая ситуация:
- партиция расположена на 1,2,3 брокере
- лидер у такой партиции 3-ий (позже всех выключился)
- in sync только 3-ий брокер

ошибки на 1,2-ом  такие:
org.apache.kafka.common.errors.UnknownTopicOrPartitionException: This server does not host this topic-partition.
[2021-02-01 13:41:08,164] ERROR [ReplicaFetcher replicaId=2, leaderId=3, fetcherId=0] Error for partition test-7 at offset 36547 (kafka.server.ReplicaFetcherThread)

одновременно с этим на 3-ем
[2021-02-01 13:49:19,930] ERROR [KafkaApi-3] Number of alive brokers '0' does not meet the required replication factor '3' for the offsets topic (configured via 'offsets.topic.replication.factor'). This error can be ignored if the cluster is starting up and not all brokers are up yet. (kafka.server.KafkaApis)

со стороны клиентов это выглядит так:
 Error while fetching metadata with correlation id 3 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)

Сама по себе ошибка не проходит
а если отсинкать заново? убрать rf потом выставить опять
источник

AU

Andrey Ustinov in pro.kafka
или вообще reassign
источник

И

Иван in pro.kafka
Andrey Ustinov
а если отсинкать заново? убрать rf потом выставить опять
Попробовал reassign сделать, но новые брокеры для данной партиции начинают также ругаться
[2021-02-01 13:47:05,843] ERROR [ReplicaFetcher replicaId=4, leaderId=3, fetcherId=0] Error for partition test-7 at offset 0 (kafka.server.ReplicaFetcherThread)
источник

AU

Andrey Ustinov in pro.kafka
а ты лог подчисти у них
источник

AU

Andrey Ustinov in pro.kafka
куда нибудь в /tmp
источник

ЮХ

Юра Ходырев... in pro.kafka
Иван
Добрый день, подскажите как решить проблему
кафка 2.12-2.3.0 x 5 брокеров
топик 10 партиций x replication factor = 3

1) все работает штатно
2) последовательно выключил systemctl stop kafka 1,2,3
3) включил обратно
4) кафка начала сыпать ошибками для некоторых партиций

Типовая ситуация:
- партиция расположена на 1,2,3 брокере
- лидер у такой партиции 3-ий (позже всех выключился)
- in sync только 3-ий брокер

ошибки на 1,2-ом  такие:
org.apache.kafka.common.errors.UnknownTopicOrPartitionException: This server does not host this topic-partition.
[2021-02-01 13:41:08,164] ERROR [ReplicaFetcher replicaId=2, leaderId=3, fetcherId=0] Error for partition test-7 at offset 36547 (kafka.server.ReplicaFetcherThread)

одновременно с этим на 3-ем
[2021-02-01 13:49:19,930] ERROR [KafkaApi-3] Number of alive brokers '0' does not meet the required replication factor '3' for the offsets topic (configured via 'offsets.topic.replication.factor'). This error can be ignored if the cluster is starting up and not all brokers are up yet. (kafka.server.KafkaApis)

со стороны клиентов это выглядит так:
 Error while fetching metadata with correlation id 3 : {test=UNKNOWN_TOPIC_OR_PARTITION} (org.apache.kafka.clients.NetworkClient)

Сама по себе ошибка не проходит
Такое ощущение, что ошибка на 1-ом и 2-ом появилась после генерации нового имени для брокера (не знаю на сколько верная гипотеза).
Условно broker с id=1 стал теперь брокером с id=5
источник

ЮХ

Юра Ходырев... in pro.kafka
Кластер не собрался,  а rf=3, вот кластер и шлёт лесом, так как не может добиться выполнения условия.
Если не прав, тапками сильно не кидайте)))))
источник

И

Иван in pro.kafka
После очередного рестарта все завелось, поднимали в обратном порядке, хз что было.
источник

AU

Andrey Ustinov in pro.kafka
кафку достаточно сложно сломать на самом деле
источник

AU

Andrey Ustinov in pro.kafka
люблю ее за это
источник

NR

Nikolaj Rudakov in pro.kafka
всем привет.
через кафку проходят все изменения объектов некой сущности (добавление, редактирование). нужно вывести историю изменений с момента создания. как это лучше сделать, чтобы не шерстить всю очередь с начала?
- кафка стримс
- писать во внешний источник (бд, кеш) смещение создания объекта и смещение последнего изменения и проходить по очереди только в рамках этих смещений
- ещё варианты?
источник

SB

S B in pro.kafka
Nikolaj Rudakov
всем привет.
через кафку проходят все изменения объектов некой сущности (добавление, редактирование). нужно вывести историю изменений с момента создания. как это лучше сделать, чтобы не шерстить всю очередь с начала?
- кафка стримс
- писать во внешний источник (бд, кеш) смещение создания объекта и смещение последнего изменения и проходить по очереди только в рамках этих смещений
- ещё варианты?
это теоретически невозможно. кафка это иммутабельный лог и если ты хочешь всю историю чего-либо, ты просто обязан пройти всю соответствующую секцию лога от первого до последнего события. что ты можешь делать - так это регистрировать позицию конкретного первого сообщения по сущности (офсет) и это поможет быстро прыгнуть на нужную точку. но если тебе нужна вся история по всем сущностям сразу это тоже не имеет смысла.
источник

DP

Denis Pavlyuchenko in pro.kafka
Nikolaj Rudakov
всем привет.
через кафку проходят все изменения объектов некой сущности (добавление, редактирование). нужно вывести историю изменений с момента создания. как это лучше сделать, чтобы не шерстить всю очередь с начала?
- кафка стримс
- писать во внешний источник (бд, кеш) смещение создания объекта и смещение последнего изменения и проходить по очереди только в рамках этих смещений
- ещё варианты?
а в кафке какое ретеншен полиси? а то данные удалятся, и вывести все операции не выйдте
источник

SB

S B in pro.kafka
но вообще, проиграть весь лог событий от нуля - это быстро. кафка для этого проектировалась.
источник

SB

S B in pro.kafka
это для нее адекватный юзкейс.
источник