[
https://issues.apache.org/jira/browse/COUCHDB-1623?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13510356#comment-13510356
]
Dave Cottlehuber commented on COUCHDB-1623:
-------------------------------------------
Hi Fedor,
Unless I'm missing something this is a WONTFIX.
Some clarifications:
The _users DB is just a normal DB, except that you must be a server admin to
see docs other than yours. I am assuming that you don't have access, and
therefore what you think you're replicating doesn't contain the necessary
fields like hashed salted passwords. The npm registry uses a normal _users db
for auth, and I'm guessing but can't tell that public_users is a view on top of
that stripping out the salted hashed passwords, with a rewrite rule for
prettiness. If you access https://user:[email protected]/_session
you'll see the npm service uses a standard _users DB.
compare curl http://isaacs.iriscouch.com/public_users/org.couchdb.user%3Adch or
http://isaacs.iriscouch.com/public_users/org.couchdb.user%3Afedor.indutny for
example with curl -k
https://user:[email protected]/_users/org.couchdb.user%3Adch using
your npm username and then
https://user:[email protected]/_users/org.couchdb.user%3Afedor.indutny
you'll see the difference.
You may find that duplicating your fedor.indutny doc from the real npm _users
db might be enough to get your duplicated NPM working, but it depends if there
are other views in the _users DB (which you won't have access to the ddocs to
read) that are required.
Conflicts:
These are normal in a multi-master replication environment. If you don't
replicate conflicts, how will different couch instances ever resolve &
potentially re-integrate those differing versions? CouchDB's role is simply to
replicate conflicts to all nodes, ensure a consistent algorithm is in place for
choosing a winning version, and then it's up to the application developer to
decide how to handle those conflicts.
If you have more questions on this, best to email user@ or hop on irc.
A+
Dave
> Replication of user database and conflicts
> ------------------------------------------
>
> Key: COUCHDB-1623
> URL: https://issues.apache.org/jira/browse/COUCHDB-1623
> Project: CouchDB
> Issue Type: Bug
> Components: Database Core, Replication
> Reporter: Fedor Indutny
>
> Heya,
> I'm trying to setup a private couchdb clone of npm repository:
> http://isaacs.iriscouch.com/registry
> And apparently I'll need to make authorization work, I've replicated
> http://isaacs.iriscouch.com/public_users database and set is as
> authentication_db. But authorization doesn't seem to be working, because
> couchdb's database contains a lot of conflicts for almost every user... So,
> basically how could one resolve it? And why documents with conflicts were
> replicated at all?
> Also, after removing conflicting revisions, authentication doesn't seem to be
> working (while it does in upstream database).
> Cheers,
> Fedor.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira