Github user davisp commented on the pull request:
https://github.com/apache/couchdb-couch-mrview/pull/2#issuecomment-60137836
Beyond the style issues there's some awfully confusing logic embedded in
this PR. A lot of things could be simplified if we pull things out into
functions which would avoid a lot of the nested conditionals that are difficult
to follow at best.
The other thing is that there's a fairly good bit of repetition in the data
stored for these indices. Was there ever a write up on what each bit of data is
for?
Also, it occurs to me suddenly that our log thing is broken since its not a
guarantee. Ie, you can't rely on it to exist to know when a key was removed
from a view. For instance, there could be corruption in a view which means that
it'd be rebuilt. This would wipe the entire log and give us a completely
different result if we're trying to sync some external data against it.
I'm also a bit uncertain what the keyseq_indexed thing is for. I think it
was for faster key based filtered replication or something but it seems like
its storing a significant amount of data for such a thing.
---
If your project is set up for it, you can reply to this email and have your
reply appear on GitHub as well. If your project does not have this feature
enabled and wishes so, or if the feature is enabled but not working, please
contact infrastructure at [email protected] or file a JIRA ticket
with INFRA.
---