Age | Commit message (Collapse) | Author |
|
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
|
|
This test doesn't exist in this branch and was accidently added
in revision 1096099.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1096247 13f79535-47bb-0310-9956-ffa450edef68
|
|
This is a backport of 1096098 from trunk.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1096099 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095842 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095585 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095584 13f79535-47bb-0310-9956-ffa450edef68
|
|
Backport of 1095581 from trunk.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095582 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095578 13f79535-47bb-0310-9956-ffa450edef68
|
|
Partial backport of 1066932 from trunk.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095576 13f79535-47bb-0310-9956-ffa450edef68
|
|
Don't set Content-Encoding headers with value "identity"
This is dictated by RFC 2616 and causes problems with Microsoft's ISA 2006 proxy.
Closes COUCHDB-1128.
Thanks Paul Davis and Andrew Gleave.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1095204 13f79535-47bb-0310-9956-ffa450edef68
|
|
Closes COUCHDB-1056
Patch by Randall Leeds.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1085801 13f79535-47bb-0310-9956-ffa450edef68
|
|
This prevents the tests from failing when another instance of CouchDB
is already running on the same machine.
Also merging in the fixup of the _error resource from r1066590.
COUCHDB-1049
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1066591 13f79535-47bb-0310-9956-ffa450edef68
|
|
Content-Length and the HTTP body are returned as 0 and an empty binary
instead of undefined.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1053514 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1053513 13f79535-47bb-0310-9956-ffa450edef68
|
|
This patch ensures that we only ever merge a linear path into the tree.
It relies on the stemming code to collapse paths that could have been
merged together by a recursive use of merge_one.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1053512 13f79535-47bb-0310-9956-ffa450edef68
|
|
Make sure attachments get compressed when their MIME type lists parameters
Closes COUCHDB-996.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1052032 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1043462 13f79535-47bb-0310-9956-ffa450edef68
|
|
This commit represents a substantial refactor of the key tree merging
logic, some of which is not strictly necessary for the resolution of
COUCHDB-968.
Two etap test cases checking the ability to merge in a non-linear tree
are removed because the functionality is no longer supported. CouchDB
only ever merged a linear revision history into an existing revision
tree.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1043460 13f79535-47bb-0310-9956-ffa450edef68
|
|
counters don't get unreleased forever because of a
continuous (or long) replication is going on.
Same type of issue as in COUCHDB-926.
Thanks Adam Kocoloski for some suggestions.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1036705 13f79535-47bb-0310-9956-ffa450edef68
|
|
function mochiweb_request:accepts_content_type/1.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1034554 13f79535-47bb-0310-9956-ffa450edef68
|
|
bytes length prefix only in the first file read operation.
For reads of small terms/iolist (up to 8Kbs), this speeds up the whole operation. No impact on larger terms/iolists.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1033790 13f79535-47bb-0310-9956-ffa450edef68
|
|
Closes COUCHDB-930.
Patch by Juuso Väänänen. Thanks.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1032673 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1032637 13f79535-47bb-0310-9956-ffa450edef68
|
|
I must've tried to set svn:executable before doing an svn add.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1031888 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1031884 13f79535-47bb-0310-9956-ffa450edef68
|
|
The second of two new features to replace the _externals protocols. This
allows users to configure CouchDB to proxy requests to an external HTTP
server. The external HTTP server is not required to be on the same host
running CouchDB.
The configuration looks like such:
[httpd_global_handlers]
_google = {couch_httpd_proxy, handle_proxy_req, <<"http://www.google.com">>}
You can then hit this proxy at the url:
http://127.0.0.1:5984/_google
If you add any path after the proxy name, or make a request with a query
string, those will be appended to the URL specified in the configuration.
Ie:
http://127.0.0.1:5984/_google/search?q=plankton
would translate to:
http://www.google.com/search?q=plankton
Obviously, request bodies are handled as expected.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1031877 13f79535-47bb-0310-9956-ffa450edef68
|
|
This is a simple feature that allows useres to configure CouchDB
so that it maintains a given OS level process alive. If the process
dies for any reason, CouchDB will restart it. If the process restarts
too often, then CouchDB will mark it has halted and not attempt
to restart it. The default max restart rate is three times in the
last five seconds. These parameters are adjustable.
Commands that are started in this manner will have access to a simple
API over stdio to request configuration parameters or to add log
statements to CouchDB's logs.
To configure an OS process as a CouchDB os_daemon, create a section
in your local.ini like such:
[os_daemons]
daemon_name = /path/to/command -with args
This will make CouchDB bring up the command and attempt to keep it
alive. To request a configuration parameter, an os_daemon can write
a simple JSON message to stdout like such:
["get", "os_daemons"]\n
which would return:
{"daemon_name": "/path/to/command -with args"}
Or:
["get", "os_daemons", "daemon_name"]\n
which would return:
"/path/to/command -with args"
There's no restriction on what configuration variables are visible.
There's also no method for altering the configuration.
If you would like your OS daemon to be restarted in the event that
the configuration changes, you can send the following messages:
["register", $(SECTION)]\n
When anyting in that section changes, your OS process will be
rebooted so it can pick up the new configuration settings. If you
want to listen for changes on a specific key, you can send something
like:
["register", $(SECTION), $(KEY)]\n
In this case, CouchDB will only restart your daemon if that exact
section/key pair changes, instead of anything in that entire section.
Logging commands look like:
["log", $(JSON_MESSAGE)]\n
Where $(JSON_MESSAGE) is arbitrary JSON data. These messages are
logged at the 'info' level. If you want to log at a different level
you can pass messages like such:
["log", $(JSON_MESSAGE), {"level": $(LEVEL)}]\n
Where $(LEVEL) is one of "debug", "info", or "error".
When implementing a daemon process to be managed by CouchDB you
should remember to use a method like checking the parent process
id or if stdin has been closed. These flags can tell you if
your daemon process has been orphaned so you can exit cleanly.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1031875 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@993567 13f79535-47bb-0310-9956-ffa450edef68
|
|
/db/_design/test or even example.com/test = /db/_design/test and other
stuff already possible with vhost manager.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@993558 13f79535-47bb-0310-9956-ffa450edef68
|
|
environment variable. use ":" instead. use ":" instead like we do in
_rewrite handler. like we do in _rewrite handler.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@987384 13f79535-47bb-0310-9956-ffa450edef68
|
|
Attachments are upgraded to support the Range header on compaction.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@986629 13f79535-47bb-0310-9956-ffa450edef68
|
|
wildcard in vhost and dynamic routing via pattern matching. Close
#COUCHDB-855.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@986182 13f79535-47bb-0310-9956-ffa450edef68
|
|
updates function.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@985678 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@983476 13f79535-47bb-0310-9956-ffa450edef68
|
|
now have non-empty bodies.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@964201 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@957951 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@949912 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@946426 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@943764 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@941033 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@940708 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@934481 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@934475 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@930363 13f79535-47bb-0310-9956-ffa450edef68
|
|
The old code was relying on a DOWN message being sent before a call
to get the current ref counter. Its possible that the request was
sent before that happened causing an error.
The new code doesn't use messages from the child process and instead
uses a monitor to know when the process went down. Then it sends
up to 10,000 requests for the current count. Theoretically the only
way this will fail is if the DOWN message to the ref_counter is
delayed for an extremely long time or dropped entirely.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@925264 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@924527 13f79535-47bb-0310-9956-ffa450edef68
|
|
Idaelly, this test should be changed to not require
the `timer:sleep()` call at all.
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@924524 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@919469 13f79535-47bb-0310-9956-ffa450edef68
|
|
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@919447 13f79535-47bb-0310-9956-ffa450edef68
|
|
failures
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@918834 13f79535-47bb-0310-9956-ffa450edef68
|