summaryrefslogtreecommitdiff
path: root/apps/couch/src
AgeCommit message (Collapse)Author
2011-09-28Merge 1.1.x because Paul Davis kept his important bug fix super secret while ↵Robert Newson
I was slaving away on this merge for two days.
2011-09-28Merge 1.1.x changesRobert Newson
Conflicts: apps/couch/include/couch_db.hrl apps/couch/src/couch_db.erl apps/couch/src/couch_os_process.erl apps/couch/src/couch_query_servers.erl apps/couch/src/couch_rep.erl apps/couch/src/couch_replication_manager.erl apps/couch/src/couch_view_compactor.erl apps/couch/src/couch_view_group.erl apps/couch/src/couch_view_updater.erl configure.ac couchjs/c_src/http.c couchjs/c_src/main.c couchjs/c_src/utf8.c etc/windows/couchdb.iss.tpl src/couchdb/priv/Makefile.am src/couchdb/priv/couch_js/main.c test/etap/160-vhosts.t test/etap/200-view-group-no-db-leaks.t test/etap/Makefile.am BugzID: 12645
2011-09-12Add missing database 'created' event.benoitc
The `created` event is emitted on apache couchdb when a database is created. This patch re-add it to bigcouch.
2011-08-15Merge branch '11554-merge-couchdb-1.1'Adam Kocoloski
2011-08-12assert 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-08-12allow replication callback module to be chosen at runtime.Robert Newson
2011-08-12move couch_js_functions.hrl to include dirRobert Newson
2011-08-12Allow asynchronous view group updates.Robert Newson
2011-07-05Remove 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-05Merged 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-05Merge 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-05Restart 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 Conflicts: apps/couch/src/couch_rep.erl
2011-07-05Backport 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-07-05Merged 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-29Guard against dead fd process in is_idle/1Adam Kocoloski
BugzID: 12365
2011-06-22Merge remote-tracking branch 'upstream/1.1.x' into 0.4.xRobert Newson
Conflicts: acinclude.m4.in apps/couch/src/couch_app.erl apps/couch/src/couch_doc.erl apps/couch/src/couch_view.erl configure.ac share/www/script/test/replicator_db.js src/erlang-oauth/Makefile.am test/etap/Makefile.am
2011-06-16support _design and _doc_ids filters.Robert Newson
2011-06-13Merge CouchDB 1.1Robert Newson
2011-05-19Removed duplicate code, thanks davisp.Robert Dionne
2011-05-19Fix under-reported values in reduce viewsAdam Kocoloski
Thanks Hardtke for ruining my afternoon^H^H^H^H demonstrating the bug. BugzID: 12112
2011-05-05Allow : in passwords (COUCHDB-969)Robert Newson
2011-04-19Track and report size of live data in DBs and viewsRobert Dionne
The #full_doc_info record is extended to include the summed size of leaf revision document bodies and their attachments. Document sizes are computed on update; accurate sizes of existing databases and view groups are only available after compaction. The document size is defined to be the size of the binary representation of #doc.body. The att_len field is used for attachments; attachments that are shared by multiple revisions of a document are only counted once. The size of a view index is defined as the size of all keys, values, and reductions accessible from the current root of the tree. BugzID: 9995
2011-04-19BugzID:9995 Add a tree foldl function to couch_key_tree.Robert Dionne
This function can be used by many of the existing functions in couch_key_tree that need to walk the revision tree, apply a function at each branch or leaf, and then accumulate results.
2011-04-18Monitor Fd after creating DBRobert Dionne
This patch has the side effect of fixing a crash of the _users DB after the first minute of running. The crash occurs because BigCouch presumes that couch_stats_collector is monitoring the file descriptor, but nothing prevents the supervisor from starting couch_auth_cache (and thus opening the _users DB) before couch_stats_collector is started. The start order is determined by the ordering of the children from the config file in couch_config's ets set. Closes #39 BugzID: 11854
2011-04-13Export make_doc/5 for mem3 replicatorAdam Kocoloski
BugzID: 12043
2011-03-19BugzID: 11976 return dbname, not shard name, in userCtxRobert Newson
2011-03-14Fall back to local DB in open_db_group/2Adam Kocoloski
2011-02-25Handle empty result set correctly in _statsAdam Kocoloski
BugzID: 11498
2011-02-25Improve batching of writes in view updaterAdam Kocoloski
This patch causes the view_updater to wait until either a minimum number of items or a maximum process memory size has been reached before committing the changes to disk. See COUCHDB-700 for discussion BugzID: 11885
2011-02-25Make couch_view_updater amenable to hot upgradesAdam Kocoloski
2011-02-24Improve the way we generate the match spec for a #db{}Adam Kocoloski
2011-02-09Fix and simplify environment for etap testsAdam Kocoloski
BugzID: 11797
2011-02-07comment out logging of calls to filter within _changes.Robert Dionne
2011-02-05Revert "fix replication checkpointing."Robert Newson
This reverts commit d2a9229c4f0a750d8e4191f60227572117a53ab7.
2011-02-05fix replication checkpointing.Robert Newson
2011-01-28COUCHDB-1047 - support inclusive_end with reduce callsRobert Newson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.0.x@1064800 13f79535-47bb-0310-9956-ffa450edef68
2011-01-28Revert "Add support for inclusive_end to fold_reduce, BugzID 11069"Adam Kocoloski
This reverts commit 5c3161d57b1d2d7953497c24be09112b6bcf71b6.
2011-01-27Set couch app vsn based on deviation from last Apache tagAdam Kocoloski
2011-01-26Remove a function clause that can never matchAdam Kocoloski
2011-01-20Merge CouchDB 1.0.2 release candidateAdam Kocoloski
Conflicts: Makefile.am acinclude.m4.in apps/couch/src/couch_db.erl apps/couch/src/couch_db_updater.erl apps/couch/src/couch_rep.erl apps/couch/src/couch_rep_reader.erl apps/couch/src/couch_view.erl apps/couch/src/couch_view_group.erl rel/overlay/etc/default.ini share/Makefile.am src/couchdb/couch_query_servers.erl src/ibrowse/Makefile.am src/ibrowse/ibrowse.app.in src/ibrowse/ibrowse.erl src/ibrowse/ibrowse_app.erl src/ibrowse/ibrowse_http_client.erl src/ibrowse/ibrowse_lb.erl src/ibrowse/ibrowse_lib.erl src/ibrowse/ibrowse_sup.erl src/ibrowse/ibrowse_test.erl src/mochiweb/mochijson2.erl test/etap/112-replication-missing-revs.t test/etap/113-replication-attachment-comp.t test/etap/140-attachment-comp.t
2011-01-20Make shards visible on backend, be more strict about namingAdam Kocoloski
BugzID: 10162
2011-01-15clean up trailing whitespace, testing new buildRobert Dionne
2011-01-13Monitor sys_db file descriptor to keep it openAdam Kocoloski
A couch_file process occasionally checks to see if it is being monitored by any clients, and closes if not. Specifically, it checks for at least two monitoring processes, because it assumes couch_stats_collector is one of them. That assumption was wrong for sys_db files, so they would shut down after a minute and need to be reopened. BugzID: 11641
2011-01-07BugzID: 11589 call file:close explicitly to keep VM responsiveRobert Newson
Deleting a large file in the previous scheme has caused the Erlang VM to become unresponsive (including making it drop out of the ring of nodes). The cause of this is currently unknown but Adam discovered that explicitly calling file:close/1 on the file descriptor does not cause this behavior. Accordingly, I have typed in his suggested fix and tested it.
2011-01-07Revert "11589 - explictly close file descriptor in couch_file"Robert Newson
This reverts commit a14326a92817d5013c50887d52aaca10cf91d84d.
2011-01-0711589 - explictly close file descriptor in couch_fileRobert Newson
Adam discovered that explicitly calling file:close/1 on the file descriptor does not cause the node to become unresponsive and drop out of the ring.
2011-01-06Refactor OS process managementAdam Kocoloski
Squashed commit of the following: commit a9cd9681f6c88f0f3c019e98e2edfef55cad0129 commit eb38bca08ffbf778b69fbb2d612e23733af82ff5 commit 98a03a079ab24f2c7bd9e0d6d7fac5fa62bfd4eb commit 9b8ec059165d981e4cd743008ecdf393a4f37f61 commit 3a891c1dd9a17fdd267c423b340dd09c31c89d7a commit 68351dd181c8a92b5baa9ac23f25c7c191484394 commit e4384a517e2efeac9231701898a6c67213642319 commit cd954661422d0ef146b5bd7792f835dcc4220c84 commit 3bcca92c7c0102d5722dfc6b2c332766cfe0370c commit 82d15f40f503b2609cf785ce2837e1280edaaa43 commit 70051abbd699e076452d772587c32ee5e09bdcbc commit 7f01d37781e7774015f6cb34f795b28db9ecc9f5 BugzID: 11572 See also COUCHDB-901 A new config setting is introduced. The following block controls the maximum number of OS processes that will be reused. Additional OS processes will still be spawned on-demand, but they'll be terminated when the clients are through with them. [query_server_config] os_process_soft_limit = 100
2011-01-02Allow client to specify a timeout when opening a DBAdam Kocoloski
2010-12-20Use mem3 to get dbname instead of doing pattern matching directlyRobert Dionne
2010-12-09Log the request IDAdam Kocoloski