couchdb-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Marcello Nuccio <marcello.nuc...@gmail.com>
Subject Re: possible compact bug in 1.1.1
Date Tue, 22 Nov 2011 14:35:36 GMT
What happens if you change the document?
For example if you insert a field with a timestamp as in:

$ curl -X PUT -H "Content-type: application/json"
http://hostname:7002/test/dummy -d '{ "_id": "dummy", "a": "'$(date
+%s)'" }'

Marcello

2011/11/22 Szabo, Viktor (Enterprise Infrastructure)
<Viktor.Szabo@morganstanley.com>:
> The very same thing happens:
>
> $ curl -X POST -H "Content-type: application/json" http://hostname:7002/test/_compact
> {"ok":true}
> $ curl -X PUT -H "Content-type: application/json" http://hostname:7002/test/dummy -d
'{ "_id": "dummy" }'
> {"ok":true,"id":"dummy","rev":"1-967a00dff5e02add41819138abb3284d"}
>
> By the way, I've been using the API doc found over here:
> http://www.couchbase.org/sites/default/files/uploads/all/documentation/couchbase-api-dbdoc.html#couchbase-api-dbdoc_db_post
>
> Shouldn't I?
>
> Thanks,
> Viktor
>
> -----Original Message-----
> From: Robert Newson [mailto:robert.newson@gmail.com]
> Sent: 22 November 2011 14:28
> To: user@couchdb.apache.org
> Subject: Re: possible compact bug in 1.1.1
>
> When couch requires a Referer header it is expecting form-data not json. So it could
be you have found a bug there. I'd call it serious if you can induce the same thing with the
correct input format.
>
> Use PUT instead of POST, drop the referer header and let us know what happens.
>
> Sent from my iPhone
>
> On 22 Nov 2011, at 10:44, "Szabo, Viktor (Enterprise Infrastructure)"
> <Viktor.Szabo@morganstanley.com> wrote:
>
>> Hi CouchDB users,
>>
>> I don't know if this is a known issue or not, but I've been
>> experiencing strange behaviour in version 1.1.1 after initiating
>> compaction. Even though there's already a doc with the _id value of
>> "dummy" in my database, if I want to have it re-inserted after a compact operation
is started, 9 times out of 10, I receive an "ok":true notification. Occasionally I'm seeing
the expected conflict error.
>>
>> $ curl -X POST -H "Content-type: application/json"
>> http://hostname:7002/test/_compact
>> {"ok":true}
>> $ curl -X POST -H "Content-type: application/json" -H "Referer: http://hostname:7002/"
http://hostname:7002/test -d '{ "_id": "dummy" }'
>> {"ok":true,"id":"dummy","rev":"1-967a00dff5e02add41819138abb3284d"}
>> $ curl -X POST -H "Content-type: application/json"
>> http://hostname:7002/test/_compact
>> {"ok":true}
>> $ curl -X POST -H "Content-type: application/json" -H "Referer: http://hostname:7002/"
http://hostname:7002/test -d '{ "_id": "dummy" }'
>> {"ok":true,"id":"dummy","rev":"1-967a00dff5e02add41819138abb3284d"}
>> How is this possible?
>>
>> Given that I sometimes get an "ok" confirmation, but sometimes get a
>> "conflict error" for the very same request sent to the database with the very same
content, I don't really feel secure about the integrity of the service.
>> I'm thinking that the issue is related to the fact that the database
>> already had accepted a doc with the same id and content, but still, undeterministic
behaviour is not something I like.
>>
>> Do you have a clue on what might be going on?
>>
>> (I wasn't able to reproduce under 1.1.0. Used a single-node instance
>> with no replication set up and no clients connecting to the service)
>>
>> Thanks,
>> Viktor
>>
>> ----------------------------------------------------------------------
>> ----
>> NOTICE: Morgan Stanley is not acting as a municipal advisor and the opinions or views
contained herein are not intended to be, and do not constitute, advice within the meaning
of Section 975 of the Dodd-Frank Wall Street Reform and Consumer Protection Act. If you have
received this communication in error, please destroy all electronic and paper copies and notify
the sender immediately. Mistransmission is not intended to waive confidentiality or privilege.
Morgan Stanley reserves the right, to the extent permitted under applicable law, to monitor
electronic communications. This message is subject to terms available at the following link:
http://www.morganstanley.com/disclaimers. If you cannot access these links, please notify
us by reply message and we will send the contents to you. By messaging with Morgan Stanley
you consent to the foregoing.
>
> --------------------------------------------------------------------------
> NOTICE: Morgan Stanley is not acting as a municipal advisor and the opinions or views
contained herein are not intended to be, and do not constitute, advice within the meaning
of Section 975 of the Dodd-Frank Wall Street Reform and Consumer Protection Act. If you have
received this communication in error, please destroy all electronic and paper copies and notify
the sender immediately. Mistransmission is not intended to waive confidentiality or privilege.
Morgan Stanley reserves the right, to the extent permitted under applicable law, to monitor
electronic communications. This message is subject to terms available at the following link:
http://www.morganstanley.com/disclaimers. If you cannot access these links, please notify
us by reply message and we will send the contents to you. By messaging with Morgan Stanley
you consent to the foregoing.

Mime
View raw message