[ https://issues.apache.org/jira/browse/COUCHDB-1670?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13572643#comment-13572643 ]
Robert Newson commented on COUCHDB-1670: ---------------------------------------- That's an interesting one, however I think we should hold fast to the rule that since is opaque. You have to pass back exactly what you got from couchdb. That said, we should make this a tidier 400 Bad Request. > Replicator crashes if numbers in checkpoint docs are expressed in scientific > notation > ------------------------------------------------------------------------------------- > > Key: COUCHDB-1670 > URL: https://issues.apache.org/jira/browse/COUCHDB-1670 > Project: CouchDB > Issue Type: Bug > Components: Replication > Reporter: Jens Alfke > > The CouchDB 1.2 replicator process crashes with an Erlang exception when > parsing a checkpoint document read back from a remote database, if numbers in > the document were JSON-encoded in scientific notation instead of as integers. > This includes the properties source_last_seq, end_last_seq, start_last_seq. > That is, the following encoding works fine: > ..., "source_last_seq": 1234567, ... > whereas this completely-equivalent encoding causes an exception: > ..., "source_last_seq": 1.234567e+06, ... > This issue raised its head as a result of a CouchDB-compatible engine I'm > writing (the Couchbase Sync Gateway) which can serve as a passive replication > endpoint. It's implemented in Go, and the Go JSON package has the side effect > of (a) parsing all JSON numbers into type 'double', and (b) encoding all > doubles into JSON using scientific notation if they're more than six digits > long. The net effect is that when CouchDB stores a checkpoint into the Sync > Adapter's database and then later reads it back, it barfs due to the > scientific notation. -- This message is automatically generated by JIRA. If you think it was sent incorrectly, please contact your JIRA administrators For more information on JIRA, see: http://www.atlassian.com/software/jira