[SERVER-11008] New enterprise deb and rpm packages must conflict with non-enterprise packages Created: 02/Oct/13 Updated: 11/Jul/16 Resolved: 21/Dec/13 |
|
| Status: | Closed |
| Project: | Core Server |
| Component/s: | Packaging |
| Affects Version/s: | None |
| Fix Version/s: | 2.5.5 |
| Type: | Bug | Priority: | Major - P3 |
| Reporter: | Tyler Brock | Assignee: | Ernie Hershey |
| Resolution: | Done | Votes: | 0 |
| Labels: | 26qa | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Issue Links: |
|
|||||||||||||||||||||||||||||||||||||||||||||||||
| Backwards Compatibility: | Fully Compatible | |||||||||||||||||||||||||||||||||||||||||||||||||
| Operating System: | Linux | |||||||||||||||||||||||||||||||||||||||||||||||||
| Steps To Reproduce: |
|
|||||||||||||||||||||||||||||||||||||||||||||||||
| Participants: | ||||||||||||||||||||||||||||||||||||||||||||||||||
| Description |
|
This should produce a conflict and not try to install mongodb-org-unstable (which subsequently fails) |
| Comments |
| Comment by Tyler Brock [ 31/Dec/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
That behavior seems correct to me. Nice work. | |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Ernie Hershey [ 21/Dec/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
As far as I can tell based on testing many permutations is this is ideal behavior. Also from what I've seen overall as a dpkg user I don't think it will ever prevent you from installing conflicting packages (unless we leave them not conflicting and they error on file overwriting as in the original reproduction steps). Warning the user and uninstalling the packages that are already installed seems okay to me. Here's my transcript from the same scenario as the original reproduction with the latest packages:
| |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by auto [ 12/Oct/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
Author: {u'username': u'ehershey', u'name': u'Ernie Hershey', u'email': u'ernie.hershey@10gen.com'}Message: | |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by auto [ 04/Oct/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
Author: {u'username': u'ehershey', u'name': u'Ernie Hershey', u'email': u'ernie.hershey@10gen.com'}Message: | |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Ernie Hershey [ 02/Oct/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
That makes sense to me. In a few cases the distinction is arguable, like distribution packages, but I think for the whole list we should specify "cannot be simultaneously configured" (breaks) more than "A will not operate if B is installed" (conflicts). In most cases the files are in identical locations, so there's no meaningful way to have them installed together. This might change in the future though if we support upgrades and other multiple version scenarios via packages. | |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Tyler Brock [ 02/Oct/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
Ok, now that I've read some additional stuff on this page (section 7.9): http://www.debian.org/doc/manuals/debian-faq/ch-pkg_basics.en.html Maybe we want breaks instead of conflicts? | |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Ernie Hershey [ 02/Oct/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
Here's every server package name we've released: mongo-10gen | |||||||||||||||||||||||||||||||||||||||||||||||||
| Comment by Ernie Hershey [ 02/Oct/13 ] | |||||||||||||||||||||||||||||||||||||||||||||||||
|
The list of conflicts is going to be huge - Flavors to account for: 32 (2^5) total permutations and anything with split sub-packages will actually be 4 packages to conflict with. |