Remove local replication endpoints in CouchDB 3.x#2089
Merged
Conversation
3e5c92f to
34fb80e
Compare
janl
approved these changes
Jul 31, 2019
davisp
requested changes
Jul 31, 2019
Member
davisp
left a comment
There was a problem hiding this comment.
Everything looks good to me around removing the local implementation thats never used any more. However, removing the auto-fixup for local dbnames at the very top of the HTTP layer seems a bit user unfriendly to me given its about 20 lines of code to prevent users from even noticing the old implementation is gone.
`local` replication endpoints do something completely unexpected from a user's point of view -- they replicate to and from node local databases on a random node. The only way this worked correctly was if someone used the backend port (:5986) with a single node database. However, that port is getting closed for 3.x release as well, so it makes even less sense to keep this functionality around. For more discussion and voting results see ML list: https://lists.apache.org/thread.html/ddcd9db93cee363db7da571f5cbc7f2bd24b881a34e1ef734d6a0a1c@%3Cdev.couchdb.apache.org%3E The `_replicate` HTTP "hack" was left as is, since it does work more or less, However it is inconsistent with what _replicator docs do so we should probably deprecated it and remove it in 4.x.
34fb80e to
9c14cfe
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Overview
localreplication endpoints do something completely unexpected from a user'spoint of view -- they replicate to and from node local databases on a random
node. The only way this worked correctly was if someone used the backend port
(:5986) with a single node database. However, that port is getting closed for 3.x
release as well, so it makes even less sense to keep this functionality around.
For more discussion and voting results see ML list:
https://lists.apache.org/thread.html/ddcd9db93cee363db7da571f5cbc7f2bd24b881a34e1ef734d6a0a1c@%3Cdev.couchdb.apache.org%3E
The
_replicateHTTP "hack" was left as is, since it does work more or less, however it is inconsistent with what_replicatordocs do so we should probably mark it as deprecated and remove it in 4.xTesting recommendations
make eunitmake elixirCreate a replication with a local db endpoint via _replicate and via _replicator
Checklist
rel/overlay/etc/default.ini