couchdb-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Jan Lehnardt (JIRA)" <>
Subject [jira] Created: (COUCHDB-92) Have compaction work on view indexes
Date Sat, 12 Jul 2008 21:29:31 GMT
Have compaction work on view indexes

                 Key: COUCHDB-92
             Project: CouchDB
          Issue Type: Improvement
          Components: JavaScript View Server
    Affects Versions: 0.8
            Reporter: Jan Lehnardt
             Fix For: 1.0

Right now, view indexes just grow and grow with each new index update. Since they are just
indexes, and not the data itself, compaction is simply a matter of deleting the index files.

Also, the current Btree implementation isn't completely self balanacing. It misses a balancing
condition, partially for efficiency (it's an expensive balancing operation), and for expediency.
It was easier to not implement it and gets the general case perormance boost.

The thing about this is, the btree code can remain as is if the indexing compaction just recopies
the map values (and back indexes) and recomputes the reduction values. That's a very simple
design, however, if the btree is completely self balancing, then the btree can be copied on
a node by node basis, instead of a value by value basis, and the reduction values need not
be recomputed all. This will make the compaction significantly faster overall.

This message is automatically generated by JIRA.
You can reply to this email to add a comment to the issue online.

View raw message