В моей схеме Avro у меня есть поле с именем myenum
типа enum
:
{
"name": "myenum",
"type": {
"type": "enum",
"name": "Suit",
"symbols": ["SPADES", "HEARTS", "DIAMONDS", "CLUBS"]
}
}
Я также хочу, чтобы null
было разрешено.Если я изменяю тип на объединение со значением по умолчанию, равным null
(как предложено в в этом сообщении ), оно выглядит следующим образом:
{
"name": "myenum",
"type": ["null", {
"type": "enum",
"name": "Suit",
"symbols": ["SPADES", "HEARTS", "DIAMONDS", "CLUBS"]
}]
}
Когда я проверяю его сследующий объект JSON {"myenum":"HEARTS"}
, я получаю сообщение об ошибке - Expected start-union. Got VALUE_STRING
.
Если я проверяю его с нулевым значением {"myenum": null}
, это работает.Как я могу сделать поле enum необязательным?