pulsar-client-python
pulsar-client-python copied to clipboard
[Bug] Nested arrays decoding not working as expected
trafficstars
Version
OS: Ubuntu 22.04 Python: 3.10.2 Pulsar: pulsar-client==3.2.0
Minimal reproduce step
from pulsar.schema import JsonSchema, Record, Array, String
class A(Record):
a = String()
class B(Record):
b = Array(Array(A()))
# Decode JSON data
json_data = '{"b": [[{"a": "hello world"}]]}'
decoded_data = JsonSchema(B).decode(json_data)
# Access the nested objects
nested_objects = decoded_data.b[0][0]
print(type(nested_objects))
print(nested_objects.a)
What did you expect to see?
<__main__.A object at 0x7fd1ecd07d00>
hello world
What did you see instead?
<class 'dict'>
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
AttributeError: 'dict' object has no attribute 'a'
If it's intended, can someone indicate me how to achieve my goal. If it's not intended, probably the unit test should include this. Thanks a lot !