msgpack C#->;卡夫卡->;使用者(kafka python)使用ExtraData失败:解包(b)收到额外数据

msgpack C#->;卡夫卡->;使用者(kafka python)使用ExtraData失败:解包(b)收到额外数据,python,python-3.x,apache-kafka,msgpack,Python,Python 3.x,Apache Kafka,Msgpack,我试图解码从Kafka流接收的msgpack编码的二进制消息,并在Python repl中获得以下异常 额外数据:解包(b)收到额外数据。 In [32]: message.value Out[32]: b'\xdc\x00\x15\xd9$00000000-0000-0000-0000-000000000000\xc0\xd9$00000000-0000-0000-0000-000000000000\xc0\xc0\xd9$00000000-0000-0000-0000-00000000000

我试图解码从Kafka流接收的msgpack编码的二进制消息,并在Python repl中获得以下异常

额外数据:解包(b)收到额外数据。

In [32]: message.value
Out[32]: b'\xdc\x00\x15\xd9$00000000-0000-0000-0000-000000000000\xc0\xd9$00000000-0000-0000-0000-000000000000\xc0\xc0\xd9$00000000-0000-0000-0000-000000000000\xa0\xd2X\xc8d:\xc3\xd9$3c4d1a52-536c-421a-b258-346b06097fda\xd9$1ceb5f07-b62a-4d3b-811a-d2adfce45496\xae192.168.14.177\xc2\xa9OSXEditor\xb0Mac OS X 10.12.3\xd9$c5966702-2936-4028-b911-c417cea9744f\x00\xd9$19fba27e-abf9-4be1-b8c9-eb583f3b3f61\xcd\x13\xd0\xd9$87bafec1-5368-4b5c-8368-7309a3e39a80\xca\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'

In [33]: msgpack.unpackb(message.value)
---------------------------------------------------------------------------
ExtraData                                 Traceback (most recent call last)
<ipython-input-33-31c954e1d841> in <module>()
----> 1 msgpack.unpackb(message.value)

msgpack/_unpacker.pyx in msgpack._unpacker.unpackb (msgpack/_unpacker.cpp:2143)()

ExtraData: unpack(b) received extra data.
[32]中的
:message.value
输出[32]:b'\xdc\x00\x15\xd9$00000000-0000-0000-00000000000000\xc0\xd9$00000000-0000-0000-00000000\xc0\xc0\xd9$00000000-0000-0000-0000-00000000\xa0\xd2X\xc8d:\xc3\xd9$3c4d1a52-536c-421a-b258-346B0097FDA\xd9$1ceb5f07-b62a-4d3b-811a-ADD2FCE45496\xEA92.14.177\xBOS10.12.10.12.3 3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层3层9层9层5层5层5层6层6层6层6层6层6层6层6层6层6层6层6层6层6层6层6层6层6层6层6层7层6层6层6层7层7层7层7层7层7层7层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层8层x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x000\0 0\0 0 0\0 0 0\0 0 0\0 0 0\0 0 0 0\0 0 0\0 0 0 0\0 0 0 0\0 0 0\0 0 0\0 0 0\0 0 0 0 0\0 0 0 0\0 0 0 0\0 0 0\0 0 0\0\0 0\0\0\0 0\\0 0 0\0 0 0 0\0 0 0\0 0 0 0\\0 0 0 0 0 0 0\\\\0 0 0 0 0 0 0 0 0 0 0 0\\\\\\\\\0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\\\\\\\\\\\\\\\\\\0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0\\\\\\\\\\\\\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00'
在[33]中:msgpack.unpacb(message.value)
---------------------------------------------------------------------------
外部数据回溯(最近一次呼叫上次)
在()
---->1 msgpack.unpacb(message.value)
msgpack中的msgpack/_unpacker.pyx._unpacker.unpacb(msgpack/_unpacker.cpp:2143)()
额外数据:解包(b)收到额外数据。
Python 3.5


有什么想法吗?

好的,如果我使用一切有效的工具,那么问题似乎出在msgpack python中

In [4]: import umsgpack
In [5]: umsgpack.unpackb(message.value)
Out[5]: 
['00000000-0000-0000-0000-000000000000',
 None,
 '00000000-0000-0000-0000-000000000000',
 None,
 None,
 '00000000-0000-0000-0000-000000000000',
 '',
 1489527866,
 True,
 '3c4d1a52-536c-421a-b258-346b06097fda',
 '1ceb5f07-b62a-4d3b-811a-d2adfce45496',
 '192.168.14.177',
 False,
 'OSXEditor',
 'Mac OS X 10.12.3',
 'c5966702-2936-4028-b911-c417cea9744f',
 0,
 '19fba27e-abf9-4be1-b8c9-eb583f3b3f61',
 5072,
 '87bafec1-5368-4b5c-8368-7309a3e39a80',
 0.0]

你的问题是什么?更新后的问题可以证实我有类似的问题。试图从C++中打包一个整数数组,用MSGPACK打包到具有MsGPACK的Python服务器。遇到相同的“解包(b)收到额外数据”。如果我的数组的值超过1,则会出现问题。通过更改为umsgpack,一切都开始工作。