«Fastavro» ValueError: Decimal ('5') (type <class 'decimal.Decimal'>) не соответствует ['null', 'bytes'] в звездочках поля
Я использую fastavro и получаю сообщение об ошибке
ValueError: Decimal('5') (type <class 'decimal.Decimal'>) do not match ['null', 'bytes'] on field stars
Читая эту документацию, десятичное число должно иметь тип байтов, но при этом я все равно получаю ту же ошибку.
Кто-нибудь сталкивался с этой проблемой и решил ее?
schema = {
'doc': 'Data export for BigQuery',
'namespace': 'rating',
'type': 'record',
'name': 'rating',
'fields': [
{'name': 'review_date', 'type': ["null", {"type": "long", "logicalType": "timestamp-millis"}]},
{'name': 'stars', 'type': ['null', 'bytes']},
{'name': 'status', 'type': ['null', 'int', 'bytes']},
{'name': 'order_number', 'type': ['null', 'int', 'bytes']}
],
}
if __name__ == '__main__':
result = parse_schema(schema)
payload = payload()
# Writing
with open('ratings.avro', 'wb') as out:
writer(out, result, payload)
# Reading
with open('ratings.avro', 'rb') as fo:
for record in reader(fo):
print(record)