Parent Directory
|
Revision Log
| Links to HEAD: | (view) (annotate) |
| Sticky Revision: |
code improvements from tidier. Patch by Kostis Sagonas. COUCHDB-570
Introduces native Erlang query servers. Closes COUCHDB-377 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.
Initial commit of _update handler. Thanks to Paul Davis, Jason Davies for 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.
enable include_docs=true for list functions, patch by Mark Hammond, closes COUCHDB-444
Initial checkin of _changes filters. The prime weak-spot for this approach 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.
wheeeeeeee
trimmed trailing whitespace
merge list-iterator branch to trunk. changes JavaScript _list API
Test and fix for infinite loops in view_servers, fix for crashed OS processes causing leaked erlang processes and fix for view server crashing when view group process terminates.
Adding testing for GET /_changes?continuous=true by adding a GET /_sleep?time=Msecs call, which allows the browser to process the waiting data on the other async XHR request.
You can now specify either "_sum" or "_count" as the source code for 2 built-in Erlang reduce functions. The framework is ready for YOU to add more built in reductions. The short list includes: _avg, _stddev, _min, and _max. We could also have one function that does all that in a single function, but it might not be as fun to use.
reduce_limit error is thrown when the reduce function output is not small enough compared to the input. Errors can be switched off using the config API.
allow for handling 404s in document show functions
Support for reduce views in _list. closes COUCHDB-260. Thanks Jason Davies.
Improved etag handling for show funcs and db_doc requests; main.js cleanup (baby steps); null doc allowed for show funcs
View list functions can stream views in any format. See list_views test for details.
rename _form to _show and move the funcs in the design doc to design.show.docs
merge form branch to trunk
couch_os_process to manage the JSON line protocol. thanks davisp.
move couchdb to tlp
Nearly completed security/validation work. Still needs replication testing.
Check in of initial validation and authorization work. This work is incomplete, as there is not yet any way of restricting who can update the design docs.
Changes and refactorings to couch_config
Merged json_term_changes branch back into trunk.
- Rename configuration options and sections to allow for a nicer .ini file and HTTP API calls. - Enable .ini parser to read variable assignments with spaces around the '='-sign. - Remove inadequate comment.
Merge runtimeconfig branch back into trunk
Changed name of 'combine' phase of reduce to 'rereduce', to avoid confusion.
Incremental reduce first checkin. Warning! Disk format change.
Added proper UUID generation and changed the details of how way debug logging is done to now use a more effcient macro instead of a function call.
Compaction. Works, but still needs queueing and better handling for long reads/writes overlapping the compaction switchover.
Imported trunk.
This form allows you to request diffs between any two revisions of this file. For each of the two "sides" of the diff, enter a numeric revision.
| apache@apache.org | ViewVC Help |
| Powered by ViewVC 1.1.2 |