我使用kafka python 2.0.1来使用avro数据。以下是我尝试过的代码:
from kafka import KafkaConsumer
import avro.schema
from avro.io import DatumReader, BinaryDecoder
import io
schema_path="schema.avsc"
schema = avro.schema.parse(open(schema_path).read())
reader = DatumReader(schema)
consumer = KafkaConsumer(
bootstrap_servers='xxx.xxx.xxx.xxx:9093',
security_protocol='SASL_SSL',
sasl_mechanism = 'GSSAPI',
auto_offset_reset = 'latest',
ssl_check_hostname=False,
api_version=(1,0,0))
consumer.subscribe(['test'])
for message in consumer:
message_val = message.value
print(message_val)
bytes_reader = io.BytesIO(message_val)
bytes_reader.seek(5)
decoder = avro.io.BinaryDecoder(bytes_reader)
record = reader.read(decoder)
print(record)
我得到以下错误:
avro . io . schemaresolutionexception:无法访问具有2个分支的联合的分支索引55编写器的架构:[ "null "," int" ]读取器的架构:[ "null "," int" ]
任何人都可以建议这个错误的可能原因是什么?我已经按照这个线程跳过了最初的5个字节:
如何从Kafka解码/反序列化Avro与Python
我让它工作了。问题是引用了错误的架构。谢谢。
美好的一天, 我尝试在新的Jenkins实例上设置多分支管道,在扫描多分支管道日志中遇到了以下错误: 没有这样的文件:E:\Continuous Integration\Jenkins\jobs\Enhanced API\indexing\indexing.log 根据jenkins.err.log,我遇到了一个 这个Jenkins的版本是2.85,带有以下版本的Git插件: Git客户端插件-2
让我们来看一个简单的分支新建与分支合并的例子,实际工作中你可能会用到类似的工作流。 你将经历如下步骤: 开发某个网站。 为实现某个新的需求,创建一个分支。 在这个分支上开展工作。 正在此时,你突然接到一个电话说有个很严重的问题需要紧急修补。 你将按照如下方式来处理: 切换到你的线上分支(production branch)。 为这个紧急任务新建一个分支,并在其中修复它。 在测试通过之后,切换回线上
若要在新建的issue1分支进行提交,需要切换到issue1分支。 要执行checkout命令以退出分支。 $ git checkout <branch> 切换到issue1分支。 $ git checkout issue1 Switched to branch 'issue1' 目前的历史记录是这样的。 Note 在checkout命令指定 -b选项执行,可以创建分支并进行切换。 $ git c
我在一个分支“测试”中工作,并进行了拉操作,现在我按照原点进行更新。 我签出分支“开发”,它位于源/开发后面,我复制了一些代码更改。现在我运行: 当我在分支“测试”中工作时,我得到了许多未跟踪的文件,而不是暂存的文件。现在我只想签回测试分支并推动我的更改。我的更改很少,所以我可以还原并重做它们。但如何切换分支,因为我遇到了错误: 错误:签出将覆盖以下未跟踪的工作树文件: 所有未标记和未跟踪的文件
问题内容: 有没有办法告诉詹金斯(2.2)删除已删除分支的作业?目前,由于未删除作业,因此我的构建监视器填充了分支。是否有设置可以触发此行为,还是应该将其记录为错误? 问题答案: 由于您使用的是最新的Jenkins版本,请考虑将作业切换到多分支管道设置。 工作流多分支功能(由工作流插件提供)提供以下关键功能: 在仓库中,每个新分支都会在Jenkins中自动创建工作流(作业)(假设Webhook已从
我从Bitbucket或Github迁移了我的回购协议。我认为这无关紧要,但这是唯一不同的地方。有一段时间,我安装了两个遥控器: 然后我将两者都删除,并将原点指向github: 开发分公司测试推送: 一切都是最新的,好的,很好。 按照常规为某些工作创建新分支: 更新一两个文件。尝试推送至远程: 这会导致错误: 致命:无法将功能/名称解析为分支 在线搜索此问题,找到一些关于确保HEAD正确的信息,其