This makes sure that we only optionally require the same version of cURL that CouchDB does.
BigCouch 0.3 cannot parse requests of the form /db/_changes?since="123-foo" so the recent ?JSON_ENCODE addition to Since in two places causes 0.3 <-> 0.4 replication to fail with json_encode/badterm errors. This patch applies JSON encoding only when the Since value is not already a binary (i.e, when it's a [integer(), binary()]) and interop is restored. BugzID: 12833
Our headers start with a <<1>> and then four bytes indicating the length of the header and its checksum. When the header is larger than 4090 bytes it will be split across multiple blocks in the file and will need to be reassembled on read. The reassembly consists of stripping out <<0>> from the beginning of each subsequent block in the remove_block_prefixes/2 function. The bug here is that we tell remove_block_prefixes that we're starting 1 byte into the current block instead of 5, so it ends up removing one good byte from the header and injecting one or more random <<0>>s. Headers larger than 4k are very rare and generally require a view group with a huge number of indexes or indexes with fairly large reductions, which explains why this bug has gone undetected until now. Closes COUCHDB-1319.
Looks like we had a couple commits get crossed over during the merges. This removes the original version of the patch that wrapped JS functions with parens.
This reverts commit e311d45. Turns out the 'libm' error is a very obscure way of reporting a lack of a c++ compiler.
Add a remsh script for each node BugzId: 12730
Cookies now default to using ~/.erlang.cookie which is automatically generated if it does not exist when erlang starts with a name. There is also no longer a need to specify a name to remsh as it'll generate a name based on the process id and set the short or long version appropriately.
Fix badarg error in couch_server:try_close_lru/1 BugzID: 12363
The race condition in couch_server's ets table usage rears its ugly head by leaving an entry in couch_lru. This patch just addresses the issue by allowing the client pid to use the db and ignores the fact that for the duration its over the max_dbs_open setting.
The remsh pattern is quite useful for connecting to running nodes for debugging production issues. This adds a small script that lets users connect quickly to a running node.
Part of the backport of COUCHDB-1008 to chttpd. This just updates the default.ini with some commented out options describing their availability to users.
This function is new in Python 2.7 and we already have a function that returns command ouput. Just reuse runcmd to get the version.
This fixes "Unable to generate spec" errors when trying to build a release on Erlang/OTP R13.
This reverts commit 61f10e7.
This reverts commit 5b558c8.
This commit reverts 1.8.5 compatibility including the corresponding couchjs paren hack as this leads to significant breakage in existing functions.
…t resolved in 1.1.1