summaryrefslogtreecommitdiff
path: root/src/couchdb
AgeCommit message (Collapse)Author
2011-08-18Merge revision 1159045 from trunkFilipe David Borba Manana
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
2011-08-15Fix empty range check for raw collation.Paul Joseph Davis
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
2011-08-13Merge revision 1157428 from trunkFilipe David Borba Manana
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
2011-08-10Revert couch_server changes added in revision 1156361Filipe David Borba Manana
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
2011-08-10COUCHDB-1245 - enforce maximum chunk size for _log call to better manage memory.Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1156369 13f79535-47bb-0310-9956-ffa450edef68
2011-08-10Merged revision 1156360 from trunkFilipe David Borba Manana
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
2011-08-10COUCHDB-1244 - close file descriptor in couch_log:read/2Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1156351 13f79535-47bb-0310-9956-ffa450edef68
2011-07-30Backport of r1152398 from trunkRandall Leeds
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
2011-07-30Backport of r1152397 from trunkRandall Leeds
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
2011-07-28revert redundant pattern match.Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1151976 13f79535-47bb-0310-9956-ffa450edef68
2011-07-25assert that calls to file functions actually succeed.Robert Newson
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
2011-07-06Merge revision 1143375 from trunkFilipe David Borba Manana
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
2011-07-04Backport r1142685 from trunk: Allow "/" as vhost target.Jan Lehnardt
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
2011-07-03Remove warning about unused variableFilipe David Borba Manana
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1142410 13f79535-47bb-0310-9956-ffa450edef68
2011-07-02Merged revision 1142262 from trunkFilipe David Borba Manana
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
2011-07-02Merge revision 1142259 from trunkFilipe David Borba Manana
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
2011-07-02Restart replications on errorFilipe David Borba Manana
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
2011-06-30COUCHDB-1206 - include current_seq in view ETag for include_docs=trueRobert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1141522 13f79535-47bb-0310-9956-ffa450edef68
2011-06-28Backport revision 1140886 from trunkFilipe David Borba Manana
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
2011-06-26Merged revision 1139894 from trunkFilipe David Borba Manana
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
2011-06-23Merged revision 1104168 from trunkFilipe David Borba Manana
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
2011-06-23Merged revision 1138796 from trunkFilipe David Borba Manana
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
2011-06-21Backport revision 1137928 from trunkFilipe David Borba Manana
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
2011-06-20Fix spurious declarations of new merge conflictsRobert Newson
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
2011-06-16Merge revision 1136639 from trunkFilipe David Borba Manana
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
2011-06-12Backport revision 1129897 from trunkFilipe David Borba Manana
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
2011-06-08backport r1133312 from trunkRandall Leeds
_view_cleanup with no _design docs - COUCHDB-1136 git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1133510 13f79535-47bb-0310-9956-ffa450edef68
2011-06-08bump minimum erlang to R13B02 (COUCHDB-1191)Randall Leeds
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1133272 13f79535-47bb-0310-9956-ffa450edef68
2011-06-03set HttpOnly on auth cookies on SSL.Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1130996 13f79535-47bb-0310-9956-ffa450edef68
2011-05-30supervisor:delete_child returns ok after a successful terminated_child in R14B03Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1129107 13f79535-47bb-0310-9956-ffa450edef68
2011-05-28COUCHDB-1171 Multiple requests to _changes feed causes {error, system_limit} ↵Robert Newson
"Too many processes" git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128704 13f79535-47bb-0310-9956-ffa450edef68
2011-05-28COUCHDB-1173 - pass md5 in stub so replication verifies the transfer.Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128698 13f79535-47bb-0310-9956-ffa450edef68
2011-05-27COUCHDB-1074 - fix variable substitution in rewriterRobert Newson
- key= ":key", startkey=[":a", ":b"] - variable substitution via query arguments - variable substituin via reversed path matching variables The variable substition is now a lot easier than the old one. Variables are decoded from the query if they are json, and we recode them only at the end. (Patch by Benoît Chesneau) git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128189 13f79535-47bb-0310-9956-ffa450edef68
2011-05-26COUCHDB-1177 - don't read more of an attachment than Content-Length states.Robert Newson
(original patch by Paul Davis, awesomeness enhanced by Robert Newson). git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128040 13f79535-47bb-0310-9956-ffa450edef68
2011-05-26COUCHDB-1178 - fix make_first_doc_on_disk function_clause errorRobert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128039 13f79535-47bb-0310-9956-ffa450edef68
2011-05-26COUCHDB-1173 - return Content-MD5 when fetching attachments where possible.Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128038 13f79535-47bb-0310-9956-ffa450edef68
2011-05-26COUCHDB-1163 - fix internal state of documents affected by COUCHDB-885 ↵Robert Newson
(patch by Paul Davis) git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1128037 13f79535-47bb-0310-9956-ffa450edef68
2011-05-25Backported revision 1127632 from trunkFilipe David Borba Manana
Force non admins to supply a user_ctx in replication documents This is to prevent users deleting replication documents added by other users and to make it clear who triggers which replications. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1127634 13f79535-47bb-0310-9956-ffa450edef68
2011-05-23Fix authentication. Jquery append "*.*" to accept byRobert Newson
default so if we test text/html first it will alway be true. Then test first if application/json was given and then test if text/html then others. Backported from trunk (related to COUCHDB-1175). git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1126759 13f79535-47bb-0310-9956-ffa450edef68
2011-05-23Merged revision 1126426 from trunkFilipe David Borba Manana
Fix timing issues in the doc PUT multipart/related API Two issues were present: 1) the handler replied to the request before the multipart parser consumed all the request's data, causing a subsequent request in the same connection to consume the remaining data from the multipart/related request; 2) the data function passed to the multipart parser could consume, and discard, all or part of the data from a subsequent request in the same connection. This closes COUCHDB-1174. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1126428 13f79535-47bb-0310-9956-ffa450edef68
2011-05-21Merged revision 1125828 from trunkFilipe David Borba Manana
Add missing option to multipart/related GETs This is necessary as the client needs to be able to know if attachments are encoded or not. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1125830 13f79535-47bb-0310-9956-ffa450edef68
2011-05-21Merged revision 1125680 from trunkFilipe David Borba Manana
Use RFC3339 timestamps in replication documents As recently proposed by Max Odgen, RFC3339 timestamps are now used instead of Unix timestamps. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1125682 13f79535-47bb-0310-9956-ffa450edef68
2011-05-20Replication manager: allow edition of replication documentsFilipe David Borba Manana
Replication documents that are not in the triggered state can now be edited by users. This is to make it simpler for Futon users to restart replications - they can just edit the document, remove its state field, and save it, instead of recreating it or adding a similar document but with a different _id. This is a backport of revision 1125319 (trunk). git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1125321 13f79535-47bb-0310-9956-ffa450edef68
2011-05-20Replication manager: don't update doc if new state == current stateFilipe David Borba Manana
This is to avoid unncessary updates. This is a backport of revision 1125317 (trunk). git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1125320 13f79535-47bb-0310-9956-ffa450edef68
2011-05-17port Filipe's fix and test for COUCHDB-885 to 1.1.xRobert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1104475 13f79535-47bb-0310-9956-ffa450edef68
2011-05-13Merged revision 1102137 from trunkFilipe David Borba Manana
Make sure view group shutdowns when database is deleted or dies Added more assertions to test 200-view-group-no-db-leaks.t to ensure this doesn't happen anymore. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1102678 13f79535-47bb-0310-9956-ffa450edef68
2011-05-11Merged revision 1101896 from trunkFilipe David Borba Manana
Fix logger crash when messages have unicode characters This closes COUCHDB-1158. Thanks Dale Harvey. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1101924 13f79535-47bb-0310-9956-ffa450edef68
2011-05-06COUCHDB-760 - allow utf-8 in attachment names (patch by davisp/benoitc)Robert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1100254 13f79535-47bb-0310-9956-ffa450edef68
2011-04-25Fix vhosts for https and fix vhost dependence on sorting ofJan Lehnardt
values in the config system which isn't guaranteed. Make vhost test cases more robust. Closes COUCHDB-1103 Source patch by Benoit and tests patch by me. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1096636 13f79535-47bb-0310-9956-ffa450edef68
2011-04-23Merged revision 1096252 from trunkFilipe David Borba Manana
View groups: only open the databases when needed View groups keep the databases open all the time. This is a problem once the server reaches max_dbs_open open databases, as it prevents the server from closing inactive databases via the LRU system. Closes COUCHDB-1138. git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1096253 13f79535-47bb-0310-9956-ffa450edef68