[
https://issues.apache.org/jira/browse/AVRO-1022?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13221634#comment-13221634
]
Raymie Stata commented on AVRO-1022:
------------------------------------
Based on the dialog above, I propose that we turn this into a set of
recommendations for Avro implementers and app developers. I've attached a
draft of these recommendations, if folks like them, I can turn them into a
patch for the spec.
The basic idea is as follows. We cast this as an "interoperability" problem.
On the one hand, the current spec for names facilitates language
interoperability, and we shouldn't change it. On the other hand, we should
apply the Robustness principle: accept liberally, generate strictly. (Looking
closely at Scott's and Doug's comments, I think this is what they're really
getting at.)
In our context, Avro implementations accept schemas, Avro app developers
generate them. Thus, we recommend that Avro implementations, by default,
accept schemas liberally. This means accepting arbitrary Unicode strings for
names (but with no normalization or other Unicode processing). At the same
time, Avro developers for who want language interoperability are exhorted to
"generate strictly," and in particular, use only names that follow the strict
definition in the Avro spec, because those names are easily handled by almost
any language out there.
To help developers "generate strictly," we recommend that Avro implementations
provide optional mechanisms to perform schema validation, preferably as early
in the dev process as possible (eg, unit-test or even compile time). (For
developers who don't care about language interop, they can ignore these
mechanisms, and Avro implementations, being liberal by default, should happily
consume their input.)
The file I just posted says the above in a little more detail.
> Error in validate name
> ----------------------
>
> Key: AVRO-1022
> URL: https://issues.apache.org/jira/browse/AVRO-1022
> Project: Avro
> Issue Type: Bug
> Components: java
> Reporter: Raymie Stata
> Priority: Minor
> Attachments: AVRO-1022.patch, AVRO-1022.patch,
> unicode-recommendation.html
>
>
> Fix schema.validateName to allow only ASCII letters, not Unicode letters.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators:
https://issues.apache.org/jira/secure/ContactAdministrators!default.jspa
For more information on JIRA, see: http://www.atlassian.com/software/jira