Parent Directory
|
Revision Log
| Links to HEAD: | (view) (annotate) |
| Sticky Revision: |
Fix and tests for COUCHDB-292
code improvements from tidier. Patch by Kostis Sagonas. COUCHDB-570
Testing of incremental attachments and more testing of multipart/handling.
Initial check-in of APIs for multiple/related supported and incremental replication of only changed attachments. Needs more far more testing and to be hooked up the replicator.
Added batching of multiple updating requests, to improve throughput with many writers. Also removed the couch_batch_save module, now batch requests are simply saved async as immediately, batching with outhr updates if possible.
View refactoring and addition of raw collationoption. Significant performance improvements in view indexer.
removed _all_docs_by_seq in favor of _changes
Refactoring of endkey code in views and btrees. End key functionaility is now handled inside the btree code, simplfying calling code and making it trivial to add new collation options
delayed commits are now a config option, off by default. Closes COUCHDB-449
Fix for COUCHDB-434. Only reassign previous revid inside the updater process.
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.
MD5 term checking by using leading bit in 32 bit length to indicate MD5 presence.
Deterministic revids, MD5 checking of documents, added tracking of rev when an attachment is edited to allow attachment level replication.
added licence check, and licence.skip
fix deleted_conflicts qs parameter
trimmed trailing whitespace
Name view index files by their function hashes for no downtime deploys. Closes COUCHDB-218 Adds ability to switch view indexes on the fly by building the index from a "staging" design doc, and then COPYing the staging doc to the production doc's id. Since indexes are referenced by view definition, the new version of the production design doc will point immediately to the index files already built in staging. Please use and give feedback.
update check_bin_length since chunked response bug is fixed
misapplied Antony's workaround for extra bytes in r775724
Merging new tail append storage into trunk. Upgrades are automatic, once opened by this version old versions of CouchDB will not be able to open the files. As a precaution, you should back-up your production databases before upgrading.
added an design doc option so that doc._local_seq can be available in the map view. Closes COUCHDB-346
work around ibrowse giving response chunks too many bytes. Thanks Antony. Initially committed on the 0.9.x branch by accident in 775634. We want to include this in 0.9.1 anyway, though, so shouldn't ultimately be a problem.
Fixes COUCHDB-41
When a database doesn't exist, it now returns:
{"error": "not_found", "reason": "no_db_file"}
First cut at _changes api. Update the by_id and by_seq indexes to contain update seq numbers and pointers to bodies on disk, for use in the _changes api. This is a new file version, but the code can continue to serve the old 0.9 version without problems, though certain features in the _changes api will not be able to work. Upgrade to new file version (from 1 to 2) by compacting the file. Also fixed bugs with how the stats api tracks open databases.
hinting to reduce sparseness in chunked attachment puts
Fix and test for COUCHDB-334 where a database with delayed commits pending is considered idle, and subject to losing changes when shutdown
refactor: extract method from doc_flush_binaries. add with_stream/2 to handle automatically opening and closing binary streams.
Fixes for leaked file handles, with test.
Fix for attachment sparseness bug COUCHDB-220 by giving each attachment it's own stream and calling set_min_buffer instead of ensure_buffer. Also fixed spurious couch_file crash messages by putting the statistics decrement code into a seperate monitoring process.
Fix for crash when compacting an empty database
fix case-miss when prep_and_validate_update is called on doc with attachment stubs
Commit Damien's rep_security branch to trunk. Changes bulk_docs conflict checking. Breaks file format, see mailing list for data upgrade procedure, or http://wiki.apache.org/couchdb/Breaking_changes
stats metrics renamed: os_open_files -> open_os_files, database_changes -> database_writes
- add descriptions to metrics - move document_* metrics to couch_db module and merge them into database_* metrics
Put file ref_counting into it's own module, to make the speed of opening an already open database faster (by not waiting on file pending operations, particularly fsync).
enhance the Mochiweb streaming api based on feedback from Bob Ippolito
Accept standalone attachment PUTs with Transfer-Encoding: chunked Includes a patch to mochiweb_request that is under review for inclusion upstream.
Added task status checking, to help debug the progress of long running tasks, like view indexing and compaction.
Support for streaming attachment writes.
Added support so clients can detect if a server has potentially lost commits after multiple updates, like during bulk imports and so the replicator can detect lost commits on remote replications.
Fixed views to not commit index headers if they are ahead of what has been fully committed to the database. Also, the index headers are now committed async, improving response times updating views.
Delayed commit patch. Allows documents to be saved immediately but fully committed asynchronously. On by default, to fully commit documents synchronously, use X-Couch-Full-Commit=true in the http header. We still needs to prevent committing view indexes ahead of data and to detect when a server has crashed causing potentially lost updates during remote replication (fixed by retrying the incremental replication).
Fix for leaked file handles when not explicitly closed, added file stats code for checking for leaked file handles, and some refactoring of the view api.
Fixed problem when a crashed db can cause couch_server to crash when it attempts to interact with it. Moved the interaction from couch_server into the caller's process.
move couchdb to tlp
modifications to view server to keep the file descriptor open for the life of the view group.
view group state gen_server. thanks damien and davisp.
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.
add db_name back to database info, and test
HTTPd refactoring. Moved most code out of couch_httpd into associated modules (couch_httpd_view, couch_httpd_db, couch_httpd_misc_handlers). Also a fix to removed previous doc_by_seq index entries on compaction retry.
Fix for error when saving an attachment during a compaction.
Check-in of document purge functionality.
Merged json_term_changes branch back into trunk.
Fix for bug COUCHDB-100.
Added concurrent open db limit and a LRU cache for closing old databases when limit reached (configurable via MaxDbsOpen var in couch.ini). Refactored db update code in couch_db.erl into couch_db_updater.erl.
Fix for compacted databases reporting 0 documents after compaction
Allow for empty attachments.
Wait for the OS to flush our newly written data to disk without timing out too quickly.
Fix for COUCHDB-78. Couchdb was failing to close open file handles when compaction attempts need to be retried.
Changed name of 'combine' phase of reduce to 'rereduce', to avoid confusion.
Experimental functionality to increment database update seq, might go away, use at own risk.
fix for missing conflict check during serialized update
Incremental reduce first checkin. Warning! Disk format change.
Fix for replication being reset when replication a local and a remote database.
Fix for unnecessary update sequence generation when rewriting an already commited revision.
Replicator optmizations and fix for unnecessary document copy during re-replication
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.
Merged mochiweb branch back into trunk.
Compaction. Works, but still needs queueing and better handling for long reads/writes overlapping the compaction switchover.
Fix typo in error id.
compaction code, not hooked up to webserver yet
Fix for runaway process in the view code and the so far untested storage compaction code.
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 |