summaryrefslogtreecommitdiff
path: root/src
AgeCommit message (Collapse)Author
2009-08-12Introduces native Erlang query servers. Closes COUCHDB-377John Christopher Anderson
Thanks Mark Hammond and Paul Davis for doing most of the work, and Michael McDaniel for the inspiration. There is still room for improvement on the APIs exposed to the Erlang views, as well as likely a whole lot of work to be done to increase parallelism. But the important part now is that we have native Erlang views. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803685 13f79535-47bb-0310-9956-ffa450edef68
2009-08-12add native /db/_conflicts view, patch by Adam Kocolosk, closes COUCHDB-462Jan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803663 13f79535-47bb-0310-9956-ffa450edef68
2009-08-12recloses COUCHDB-4 (view etags) thanks to Matt Goodall for the tests. keep ↵John Christopher Anderson
'em coming! git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803358 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11silence compiler warnings, don't use unused variablesJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803325 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11roll back streaming _bulk_docs b/c of a race conditionAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803303 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11Initial commit of _update handler. Thanks to Paul Davis, Jason Davies for ↵John Christopher Anderson
code and others for discussion. The _update handler accepts POSTs to paths like: /db/_design/foo/_update/bar and PUTs which include docids, like: /db/_design/foo/_update/bar/docid The function signature: function(doc, req) { doc.a_new_field = req.query.something; return [doc, "<h1>added something to your doc</h1>"]; } The tests in update_documents.js are fairly complete and include examples of bumping a counter, changing only a single field, parsing from (and returning) XML, and creating new documents. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803245 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11more work on _bulk_docs streaming during replication.Adam Kocoloski
I think this effort is kind of a dead end, at least if we're serious about that 4GB maximum document/attachment size. Presently push replication will have trouble with attachments larger than a few MB because of the inactivity_timeout we've set in ibrowse. We'll push the data, but then close the connection after 30 seconds while the target is still decoding. We should focus our efforts instead on a way to push attachments without Base64. I don't know what to say about 4GB _documents_, I don't see how we could ever really support those now even without replication. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803220 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11fix pull replication w/o _changes (for 0.9.x remote sources)Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@803192 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11whoops, process dictionary certainly won't work thereAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802987 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11split into multiple requests so target doesn't buffer too muchAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802986 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11max chunk size of 4G, not 64kAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802983 13f79535-47bb-0310-9956-ffa450edef68
2009-08-11stream _bulk_docs JSON body during replicationAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802974 13f79535-47bb-0310-9956-ffa450edef68
2009-08-10new replicator using _changes feed for continuous replicationAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802888 13f79535-47bb-0310-9956-ffa450edef68
2009-08-10switch pause to millisecondsAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802887 13f79535-47bb-0310-9956-ffa450edef68
2009-08-10suppress obsolete list() guard warningAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802886 13f79535-47bb-0310-9956-ffa450edef68
2009-08-10fix speling, thanks JasonJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802680 13f79535-47bb-0310-9956-ffa450edef68
2009-08-09next piece of new replicator -- missing_revs bufferAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802548 13f79535-47bb-0310-9956-ffa450edef68
2009-08-08update rep_changes_feed to use feed=continuous and rep_httpcAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802416 13f79535-47bb-0310-9956-ffa450edef68
2009-08-07ibrowse wrapper for replicator, will replace do_http_requestAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@802145 13f79535-47bb-0310-9956-ffa450edef68
2009-08-06upgrade ibrowse to 1.5.2. Closes COUCHDB-451Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@801657 13f79535-47bb-0310-9956-ffa450edef68
2009-08-06batch=ok was leaking processes and ignoring intervals. Closes COUCHDB-454Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@801645 13f79535-47bb-0310-9956-ffa450edef68
2009-08-05The RSA SHA1 Oauth module was breaking trunk for older versions of the ErlangPaul Joseph Davis
VM. Since we don't actually use it, I'm removing it from the build until we add a ./conifgure option or we update our Erlang version requirement. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@801456 13f79535-47bb-0310-9956-ffa450edef68
2009-08-05proper handling of 406 Not Acceptable errors in list and show functionsJohn Christopher Anderson
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@801345 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04apply patch for chunking error from ibrowse 1.5.2Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800950 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04Initial check-in of OAuth and cookie authentication.Damien F. Katz
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800938 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04log bind_address and port after startup, helps with COUCHDB-393Jan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800884 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04encode slashes in db names in Location response header after database ↵Jan Lehnardt
creation, move couch_rep:url_encode/1 to couch_util:url_encode/1, closes COUCHDB-411 git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800883 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04Proper fix because JS_VERSION cannot distinguish between 1.8.0 and 1.8.1Paul Joseph Davis
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800873 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04Fix couch_js.c compilation with builds of non-threadsafe Spidermonkey 1.7Paul Joseph Davis
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800843 13f79535-47bb-0310-9956-ffa450edef68
2009-08-04add compile-time conditionals to support the upcoming Spidermonkey 1.8, swap ↵Jan Lehnardt
searching for libjs and libmozjs, patch by Alessandro Decina, closes COUCHDB-288 git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@800750 13f79535-47bb-0310-9956-ffa450edef68
2009-08-01implement longpolling for _changes, unify _changes-mode parameters, patch by ↵Jan Lehnardt
Benoit Chesneau, closes COUCHDB-241 git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@799862 13f79535-47bb-0310-9956-ffa450edef68
2009-08-01enable include_docs=true for list functions, patch by Mark Hammond, closes ↵Jan Lehnardt
COUCHDB-444 git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@799835 13f79535-47bb-0310-9956-ffa450edef68
2009-07-29Fix for COUCHDB-434. Only reassign previous revid inside the updater process.Damien F. Katz
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@799093 13f79535-47bb-0310-9956-ffa450edef68
2009-07-24reassemble split chunks in changes feed, add all() exportAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@797553 13f79535-47bb-0310-9956-ffa450edef68
2009-07-24comment on jchris comment on not sending Content-Length for attachment GETsJan Lehnardt
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@797400 13f79535-47bb-0310-9956-ffa450edef68
2009-07-23use spawn to avoid recursive gen_server callsAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@797092 13f79535-47bb-0310-9956-ffa450edef68
2009-07-23Fixes error on first boot after adding an admin.Paul Joseph Davis
hash_admin_passwords() was being called after registering a config callback which caused couch_server to die when first booting. Just placed the first call before registering the callback. Thanks Bob Dionne. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@797055 13f79535-47bb-0310-9956-ffa450edef68
2009-07-23Fixes etap tests for recent updates.Paul Joseph Davis
Thanks Bob Dionne git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@797053 13f79535-47bb-0310-9956-ffa450edef68
2009-07-22various bugfixes and improvements for view compactionAdam Kocoloski
View compaction was broken after the switch to signature-based index files, but we don't have tests for it yet so we didn't notice. I also committed a few changes that should make compaction faster and more robust: * commit the header immediately after compaction finishes. We used to wait 1 seconds, but if the server restarted in that second the index would be reset. * unlink from old index file at the end. Prevents process crashes that could couch_view (and with the delayed commit would sometimes cause index resets). * don't wait for running view updates to finish before replacing old view index file. If an update is running, restart it and point it to the new view group. This alleviates the situation where the view compaction goes into a busy wait, printing "still behind main file" 1000s of times to the log, and generally makes compaction finish more quickly. * better logging git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@796805 13f79535-47bb-0310-9956-ffa450edef68
2009-07-21Close jsonp response for _changes requests. Patch by Benoit Chesneau. Closes ↵Jan Lehnardt
COUCHDB-418. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@796207 13f79535-47bb-0310-9956-ffa450edef68
2009-07-20Optimize filtered _changes to use an OS process only when actively filtering ↵Damien F. Katz
changes with the continuous=true option. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795953 13f79535-47bb-0310-9956-ffa450edef68
2009-07-20Initial checkin of _changes filters. The prime weak-spot for this approach ↵John Christopher Anderson
is that it maintains an OS-process per connected filtered _changes consumer. I'm pretty sure we'll be able to work around this without changing the API, but it'll involve a lot of OS-process bookkeeping. Those enhancements should generally improve show & list performance as well. Punting on them for now, first wanted to get _changes filters implemented so people could give feedback. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795687 13f79535-47bb-0310-9956-ffa450edef68
2009-07-19oops, bug in r795297 (listen for local update notifications)Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795641 13f79535-47bb-0310-9956-ffa450edef68
2009-07-19protect against empty (=deleted) values. Closes COUCHDB-355Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795630 13f79535-47bb-0310-9956-ffa450edef68
2009-07-18listen for local update notifications when continuous=trueAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795297 13f79535-47bb-0310-9956-ffa450edef68
2009-07-17update ibrowse to 1.5.1+Adam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795278 13f79535-47bb-0310-9956-ffa450edef68
2009-07-17MD5 term checking by using leading bit in 32 bit length to indicate MD5 ↵Damien F. Katz
presence. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795277 13f79535-47bb-0310-9956-ffa450edef68
2009-07-17Deterministic revids, MD5 checking of documents, added tracking of rev when ↵Damien F. Katz
an attachment is edited to allow attachment level replication. git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795232 13f79535-47bb-0310-9956-ffa450edef68
2009-07-17one line fixNoah Slater
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@795125 13f79535-47bb-0310-9956-ffa450edef68
2009-07-16second cut at _changes feed consumer. still not used by replicatorAdam Kocoloski
git-svn-id: https://svn.apache.org/repos/asf/couchdb/trunk@794851 13f79535-47bb-0310-9956-ffa450edef68