summaryrefslogtreecommitdiff
path: root/test
AgeCommit message (Collapse)Author
2010-12-08Change key_tree merge to take path as 2nd arg, add type specsAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/branches/1.1.x@1043462 13f79535-47bb-0310-9956-ffa450edef68
2010-12-08Prefer values from old tree when merging, COUCHDB-968Adam Kocoloski
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
2010-11-19Make sure that after a local database compaction the old database reference ↵Filipe David Borba Manana
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
2010-11-12Proper verification of the request's accepted media types. Uses the new ↵Filipe David Borba Manana
function mochiweb_request:accepts_content_type/1. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1034554 13f79535-47bb-0310-9956-ffa450edef68
2010-11-11Micro optimization: when reading an iolist, read up to 8Kbs instead of the 4 ↵Filipe David Borba Manana
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
2010-11-08Preserve attachment identity length when doing local to local replications.Filipe David Borba Manana
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
2010-11-08Fixed a couple typos.Paul Joseph Davis
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1032637 13f79535-47bb-0310-9956-ffa450edef68
2010-11-06Fix executable status.Paul Joseph Davis
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
2010-11-05Don't choke on unknown configuration settings.Paul Joseph Davis
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@1031884 13f79535-47bb-0310-9956-ffa450edef68
2010-11-05HTTP proxy handler.Paul Joseph Davis
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
2010-11-05Enable CouchDB to manage OS process daemons.Paul Joseph Davis
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
2010-09-08make sure we always do a plan.Benoit Chesneau
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@993567 13f79535-47bb-0310-9956-ffa450edef68
2010-09-07fix issue #COUCHDB-230 . now it's possible to do */test =Benoit Chesneau
/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
2010-08-20sysadmins were shocked that we can use $ for anything else than a shellBenoit Chesneau
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
2010-08-18COUCHDB-161 - support Range header for attachments.Robert Newson
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
2010-08-17New vhost manager. allows dynamic add of vhosts without restart,Benoit Chesneau
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
2010-08-15add requested_path to the req so we know original path in shows/lists &Benoit Chesneau
updates function. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@985678 13f79535-47bb-0310-9956-ffa450edef68
2010-08-08fix the db-info assertion to match with the new committed_update_seq fieldJohn Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@983476 13f79535-47bb-0310-9956-ffa450edef68
2010-07-14Adapt test to change introduced in revision 963725 - deleted documents can ↵Filipe David Borba Manana
now have non-empty bodies. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@964201 13f79535-47bb-0310-9956-ffa450edef68
2010-06-25fix test case for revpos-checking commitJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@957951 13f79535-47bb-0310-9956-ffa450edef68
2010-06-01better tests for the vhost globals, fixed a bugJohn Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@949912 13f79535-47bb-0310-9956-ffa450edef68
2010-05-19add -x bitJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@946426 13f79535-47bb-0310-9956-ffa450edef68
2010-05-13vhost_global_handlers bypass rewrite rules and are available in all vhostsJohn Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@943764 13f79535-47bb-0310-9956-ffa450edef68
2010-05-04use crypto:md5 when available. thx fdmanana. Closes COUCHDB-757Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@941033 13f79535-47bb-0310-9956-ffa450edef68
2010-05-04use keysearch BIF to search ejson props. Closes COUCHDB-747Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@940708 13f79535-47bb-0310-9956-ffa450edef68
2010-04-15accept gzipped attachments w/ standalone api. thx fdmanana. COUCHDB-712Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@934481 13f79535-47bb-0310-9956-ffa450edef68
2010-04-15refactor att compression to allow more encodings. thanks fdmanana. COUCHDB-710Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@934475 13f79535-47bb-0310-9956-ffa450edef68
2010-04-02Deterministic/synchronous shutdown code.Damien F. Katz
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@930363 13f79535-47bb-0310-9956-ffa450edef68
2010-03-19Avoid a possible race condition.Paul Joseph Davis
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
2010-03-17moar bumpageJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@924527 13f79535-47bb-0310-9956-ffa450edef68
2010-03-17Wait a little longer, this should help slower systems.Jan Lehnardt
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
2010-03-05efficient attachment replication. Patch by Filipe Manana. Closes COUCHDB-639Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@919469 13f79535-47bb-0310-9956-ffa450edef68
2010-03-05faster LRU test in 070-couch-db.tAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@919447 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04reverting damien's latest commit until we can figure out why it's causing ↵John Christopher Anderson
failures git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@918834 13f79535-47bb-0310-9956-ffa450edef68
2010-03-04Changed process tree shutdown to be synchronous, to eliminate spurious test ↵Damien F. Katz
failures caused by processes not shutdown fast enough or at the wrong time. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@918805 13f79535-47bb-0310-9956-ffa450edef68
2010-03-01add etap test file to MakefileJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@917608 13f79535-47bb-0310-9956-ffa450edef68
2010-03-01fix issue COUCHDB-678 applying patch from Filipe Manana.Benoit Chesneau
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@917553 13f79535-47bb-0310-9956-ffa450edef68
2010-02-26fdmananas patch for filtered replication via COUCHDB-673John Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@916518 13f79535-47bb-0310-9956-ffa450edef68
2010-02-23Fix the command line JavaScript test runner.Paul Joseph Davis
Thanks to Bob Dionne for the patch. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@915529 13f79535-47bb-0310-9956-ffa450edef68
2010-02-19add etap test for vhostsJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@911937 13f79535-47bb-0310-9956-ffa450edef68
2010-02-18capitalizationJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@911559 13f79535-47bb-0310-9956-ffa450edef68
2010-02-18Fixes COUCHDB-640 - Reset views with invalid update seqs.Paul Joseph Davis
If a database is restored to a previous version, and the view files are not updated appropriately they will contain data from the database after the reverted-to-update_seq. This patch checks that the update sequence recorded in a view is less than or equal to the update sequence of the database. Patch is by Filipe Manana. Execellent work once again. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@911544 13f79535-47bb-0310-9956-ffa450edef68
2010-01-29Allow storing attachments in compressed form. Closes COUCHDB-583. Thanks ↵John Christopher Anderson
Filipe Manana git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@904650 13f79535-47bb-0310-9956-ffa450edef68
2010-01-14use the ./configure detected erlc, fixes builds where erlc is not in PATHJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@899306 13f79535-47bb-0310-9956-ffa450edef68
2010-01-12Add utility for verifying hashes.Jason David Davies
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@898477 13f79535-47bb-0310-9956-ffa450edef68
2009-12-23Follow RFC 2616 closer and use "verb" instead of "method"Jan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@893364 13f79535-47bb-0310-9956-ffa450edef68
2009-12-22move query server to a design-doc based protocol, closes COUCHDB-589John Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@893249 13f79535-47bb-0310-9956-ffa450edef68
2009-12-16Provide Content-MD5 header support for attachments.Paul Joseph Davis
Fixes COUCHDB-558. Thanks to Filipe Manana we now have checks for attachment transfer integrity using the Content-MD5 header (or trailer). Use of this integrity check is triggered by specifying a Content-MD5 header in your request with a value that is a base64 encoded md5. For requests that are using a chunked Transfer-Encoding it is also possible to use a trailer so that the Content-MD5 doesn't need to be known before transfer. This works by specifying a header "Trailer: Content-MD5" and then in the final chunk (the one with a size of zero) you can specify a Content-MD5 with exactly the same format as in the request headers. See the ETap test 130-attachments-md5.t for explicit examples of the request messages. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@891077 13f79535-47bb-0310-9956-ffa450edef68
2009-12-15fix query_server_spec.rb for changes in the build processJohn Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@890898 13f79535-47bb-0310-9956-ffa450edef68
2009-12-02removed add_fun optimization for filters, this provides better concurrency ↵John Christopher Anderson
at the cost of some function transfer/eval overhead, which will be optimized in a future patch. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@886334 13f79535-47bb-0310-9956-ffa450edef68