Age | Commit message (Collapse) | Author |
|
This reverts commit 5b558c81ed9709fb286a6821e9ae6d6478012c2c.
|
|
|
|
This commit reverts 1.8.5 compatibility including the corresponding couchjs
paren hack as this leads to significant breakage in existing functions.
|
|
|
|
|
|
This change makes argument parsing in couchjs more robust:
* Removes the need for couchjs script
* Adds long options
* Makes all the options to couchjs available (fix COUCHDB-893)
Conflicts:
bin/Makefile.am
bin/couchjs.tpl.in
configure.ac
|
|
Test by Christian Carter
This is a backport of r1177890
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1177892 13f79535-47bb-0310-9956-ffa450edef68
|
|
Due to a bug, older releases allowed the creation of
documents with an empty ID, which are impossible to
GET therefore making the replicator crash.
This change simply skips such documents and logs
an error message to inform users.
This is a backport of revision 1177548 from trunk.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1177550 13f79535-47bb-0310-9956-ffa450edef68
|
|
As a follow up to COUCHDB-1265 I was missing the fact that after the
insertion of a new update_seq into an internal node it is quite possible
that a compaction runs before the doc is updated again. This is
important because compaction removes information of the largest update
seq from the tree itself.
The fix is simple to include the update_seq from the #full_doc_info{}
record when calculating #doc_info.high_seq. The way to think of this
is that it's the maximum value from all known values for the update
sequence which can be defined as all values known in the tree or in the
full_doc_info record.
Backport of r1176701 from trunk
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1176704 13f79535-47bb-0310-9956-ffa450edef68
|
|
Thanks to Dave Cottlehuber for the patch.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1176651 13f79535-47bb-0310-9956-ffa450edef68
|
|
Writing the header first ensures that the index will not be reset if
the server crashes in between the handoff and the next delayed_commit.
See COUCHDB-994
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1174979 13f79535-47bb-0310-9956-ffa450edef68
|
|
fix port conversion, don't forget to use substr function. spotted by
@rnewson on irc, again. thanks. patch by benoitc.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1174358 13f79535-47bb-0310-9956-ffa450edef68
|
|
If a view group is compacting and the corresponding database
is shutdown by the LRU system, then the view compaction is
aborted because its couch view group process shutdowns.
This could lead to situations where the number of active
databases is much higher than max_dbs_open and making it
impossible to compact view groups.
Issue reported and patch tested by Mike Leddy. Thanks.
COUCHDB-1283
This is a backport of revision 1171328 from branch 1.2.x
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1171329 13f79535-47bb-0310-9956-ffa450edef68
|
|
This mirrors the behaviour of the _show API.
Patch by Christopher Bonhage.
Closes COUCHDB-1229
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1170299 13f79535-47bb-0310-9956-ffa450edef68
|
|
Backported from trunk @1166618
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1166627 13f79535-47bb-0310-9956-ffa450edef68
|
|
SVN != Git. Forgot to check svn status before committing.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1166526 13f79535-47bb-0310-9956-ffa450edef68
|
|
This is a backport of the work to make CouchJS build against all of the
major versions of SpiderMonkey. Thanks to Randall Leeds and Chris
Coulson for the original patches.
Backport based on r1137464 and r1164346
Fixes COUCHDB-1078
Fixes COUCHDB-1260
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1166525 13f79535-47bb-0310-9956-ffa450edef68
|
|
Backport of 1164350 from trunk. Slightly modified for an export
declaration conflict and removing a clause that only applies to
trunk.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1164351 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1163747 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1162307 13f79535-47bb-0310-9956-ffa450edef68
|
|
There were race conditions that made replications crash
when a local endpoint database is compacted.
Patch tested by Joan Touzet.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1162306 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1161703 13f79535-47bb-0310-9956-ffa450edef68
|
|
Requests to '_changes?style=all_docs' with a 'since' parameter would
suppress revisions of a document generated before the start of the
feed. The assumption may have been that those revisions were seen by
the client in a previous request to _changes, but this is not
necessarily true if the client is resuming the feed after a partial
download.
The safe thing to do is to include all leaf revisions for each document
in the feed.
Thanks Bob Dionne for the test code.
Closes COUCHDB-1256
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1161702 13f79535-47bb-0310-9956-ffa450edef68
|
|
This is the timeout used everywhere else. Some users are
constantly unable to replicate since under some scenarios
(namely via SSL) a timeout of 10 seconds is too short.
This is related to a thread in the users mailing list:
http://mail-archives.apache.org/mod_mbox/couchdb-user/201106.mbox/%3CBANLkTik3y-nN1uWMyNgzA_0ZSjxXdcMqQw@mail.gmail.com%3E
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1159501 13f79535-47bb-0310-9956-ffa450edef68
|
|
Fix dead lock case in the os process pool
Part of this patch was done by Paul Davis.
The patch also introduces a test case to validate that
the os process pool (couch_query_servers) operates as it
should.
Closes COUCHDB-1246.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1159049 13f79535-47bb-0310-9956-ffa450edef68
|
|
The check for empty ranges was not taking into account the
view option for raw collation. This fixes that by passing
the couch_btree:less/2 function into the check.
Patch by: Jason Smith
Back port of: 1156506, 1156507, 1156509, 1156509, 1156610
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1157706 13f79535-47bb-0310-9956-ffa450edef68
|
|
Doc validation functions from deleted ddocs must be ignored
If a design document is deleted by updating it with a "_deleted"
field set to the boolean value true, its validate_doc_update function
should be ignored for subsequent document insertions/updates.
This closes COUCHDB-1227.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1157429 13f79535-47bb-0310-9956-ffa450edef68
|
|
Leaving the tests however since it doesn't hurt.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1156385 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1156369 13f79535-47bb-0310-9956-ffa450edef68
|
|
Prevent data loss on db creation request
1) Create and populate a database
2) Restart the server
3) Send a PUT request to create the database - the server
will override the existing file, making all previous
documents no longer accessible nor recoverable
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1156361 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1156351 13f79535-47bb-0310-9956-ffa450edef68
|
|
Fix COUCHDB-1076 - views skip empty btree branches
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1152406 13f79535-47bb-0310-9956-ffa450edef68
|
|
Call traversal handlers in btree folds
Previously the fold function was only invoked for leafs.
With this change it's possible to define a fold function which is called
for inner nodes and can return a tuple {skip, Acc} in order to skip
exploration of the branch.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1152405 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1151976 13f79535-47bb-0310-9956-ffa450edef68
|
|
1) couch_file:sync could leave open fd's if close failed. Now we'll get a trace.
2) couch_file:append_term failing would be bad, so let's test that too.
backported from trunk r1150915
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1150918 13f79535-47bb-0310-9956-ffa450edef68
|
|
Redefine logging macros
With these macro definitions we don't evaluate the arguments
if the corresponding log level is not enabled.
This behaviour was accidently removed by the patch from
COUCHDB-1054.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1143376 13f79535-47bb-0310-9956-ffa450edef68
|
|
Includes a one-line whitespace fix.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1142689 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1142410 13f79535-47bb-0310-9956-ffa450edef68
|
|
On server startup, restart replications in error
If we setup a continuous replication which goes into
an error state and restart Couch just before the
replication is retried (before it transitions to the
triggered state), the user has to manually restart
the replication (recreating the document or deleting
its _replication_state field).
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1142263 13f79535-47bb-0310-9956-ffa450edef68
|
|
Replication manager, ignore db monitor messages
Ignore local database monitor messages. These messages
are received in some circunstances because replication
processes spawn local database monitors but never
do the corresponding erlang:demonitor/1,2 calls.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1142260 13f79535-47bb-0310-9956-ffa450edef68
|
|
If a replication transitions to the "error" state, attempt
to restart it up to "max_replication_retry_count" times
(.ini configuration parameter). This number of retry attempts
can now be set to "infinity" as well.
This was already current behaviour in trunk (upcoming 1.2).
Closes COUCHDB-1194.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1142258 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1141522 13f79535-47bb-0310-9956-ffa450edef68
|
|
Improved error message in the replicator
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1140887 13f79535-47bb-0310-9956-ffa450edef68
|
|
Don't steal data from subsequent requests in the pipeline
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1139897 13f79535-47bb-0310-9956-ffa450edef68
|
|
Add infinity timeout to couch_ref_counter calls
After compacting a very large database, the updater calls the couch_db gen_server with
a db record that contains a new ref counter. The couch_db gen_server calls drop on the
old ref counter and calls add on the new ref counter. However since the system is busy
deleting the old db file or garbage collecting, one of the ref counter calls times out,
causing couch_db's terminate to invoked and terminate calls shutdown on the updater.
However the updater is waiting for the call it made to couch_db to complete, which can't
complete since it's waiting for the updater.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1138799 13f79535-47bb-0310-9956-ffa450edef68
|
|
Simpler and safer db open/closing in view group servers
This makes the opening and closing of databases in the view
group server to be more friendly with the db reference counting
system, avoiding more potential db file leaking after compaction,
as we currently open a database in one process and use it on
another process (view compactor, view updater).
This significantly reduces the chances of failure when compacting
very large views as discussed in COUCHDB-994.
This relates to COUCHDB-926 and COUCHDB-994.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1138798 13f79535-47bb-0310-9956-ffa450edef68
|
|
Fix server crash associated with the replicator database
If there's an exception when calculating the replication ID
for a replication document, it crashes the replication manager
gen_server 10 times. 10 is the maximum number of restarts per
hour specified for the couch_server_sup supervisor.
An easy way to trigger such exception is to specify a non
existent filter in a replication document.
This closes COUCHDB-1199.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1137929 13f79535-47bb-0310-9956-ffa450edef68
|
|
This patch also adds extra tests of the key tree merging logic as well
as edoc-formatted documentation for the module and a few of the merge
functions. Closes COUCHDB-902.
Thanks Paul Davis, Bob Dionne, Klaus Trainer.
backported from trunk@1065471
Conflicts:
src/couchdb/couch_key_tree.erl
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1137789 13f79535-47bb-0310-9956-ffa450edef68
|
|
Human readable message on view compaction error
When a view has duplicated document IDs in the main btree,
the view compactor exists. Unfortunatelly its exit reason is
not human readable because it's an IOList.
This patch improves the error message and logs it with an
'error' level.
Issue reported by Mike Leddy in ticket COUCHDB-999.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1136640 13f79535-47bb-0310-9956-ffa450edef68
|
|
Fixes to the doc PUT multipart API
Don't hold the connection forever if the document is rejected
by a validate_doc_update function. The solution is to discard
all the attachments' data if the document was rejected.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1134942 13f79535-47bb-0310-9956-ffa450edef68
|