couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Adam Kocoloski (JIRA)" <j...@apache.org>
Subject [jira] Commented: (COUCHDB-333) Json handling of UTF8 strings not in accordance with rfc4627
Date Fri, 05 Jun 2009 15:26:07 GMT

    [ https://issues.apache.org/jira/browse/COUCHDB-333?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=12716640#action_12716640
] 

Adam Kocoloski commented on COUCHDB-333:
----------------------------------------

I submitted a patch to that issue in addition to the one that was already there.  This problem
actually breaks replication, see

https://issues.apache.org/jira/browse/COUCHDB-327

> Json handling of UTF8 strings not in accordance with rfc4627
> ------------------------------------------------------------
>
>                 Key: COUCHDB-333
>                 URL: https://issues.apache.org/jira/browse/COUCHDB-333
>             Project: CouchDB
>          Issue Type: Bug
>          Components: Database Core
>    Affects Versions: 0.9
>         Environment: couchdb 0.9.0  spidermonkey 0.7.0 erlang R12B3
>            Reporter: mark
>
> Handling of some unicode values escaped in json format \uXXXX fails with "invalid_json"
error.
> curl -X PUT -d '{"revisions":[],"_id":"U_1d11e","codepoint":"3441","definition":"\uD834\uDD1E
G clef character"}' http://localhost:5984/mydb/U_1d11e
> yields
> {"error":"invalid_json","reason":"{\"revisions\":[],\"_id\":\"U_1d11e\",\"codepoint\":\"3441\",\"definition\":\"\\uD834\\uDD1E
G clef character\"}"}
> When the RFC states:
>    To escape an extended character that is not in the Basic Multilingual
>    Plane, the character is represented as a twelve-character sequence,
>    encoding the UTF-16 surrogate pair.  So, for example, a string
>    containing only the G clef character (U+1D11E) may be represented as
>    "\uD834\uDD1E".
> Furthermore, couchdb accepts encoded strings of the format \uXXXXXXXX which is not mentioned
as acceptable in the json rfc
> curl -X PUT -d '{"revisions":[],"_id":"U_1d11e","codepoint":"3441","definition":"\u0001D11E
G clef character"}' http://localhost:5984/mydb/U_1d11e
> Yields:
> {"ok":true,"id":"U_1d11e","rev":"1-1270273433"}

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


Mime
View raw message