Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 584626 - sys-apps/portage: missed sys-devel/llvm-3.8.0-r2 update from 3.7.1-r2
Summary: sys-apps/portage: missed sys-devel/llvm-3.8.0-r2 update from 3.7.1-r2
Status: RESOLVED FIXED
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core - Interface (emerge) (show other bugs)
Hardware: All All
: Normal normal (vote)
Assignee: Portage team
URL:
Whiteboard:
Keywords: InVCS
Depends on:
Blocks: 155723 604854
  Show dependency tree
 
Reported: 2016-05-31 04:58 UTC by Zac Medico
Modified: 2017-03-15 20:58 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
copy of user configuration that reproduces the issue (config.tar.xz,420.59 KB, application/x-xz)
2016-05-31 05:12 UTC, Zac Medico
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Zac Medico gentoo-dev 2016-05-31 04:58:37 UTC
This issue was initially reported in bug 554838, comment #21:

# emerge --update --newuse --deep --with-bdeps=y -pv world

...
Total: 0 packages, Size of downloads: 0 KiB

-----

# emerge -pev world

...
[ebuild     U  ] sys-devel/llvm-3.8.0-r2:0/3.8.0::gentoo [3.7.1-r2:0/3.7.1::gentoo] USE="clang gold libffi ncurses static-analyzer xml -debug -doc -libedit -lldb -multitarget -ocaml -python {-test}" ABI_X86="(64) -32 (-x32)" PYTHON_TARGETS="python2_7" VIDEO_CARDS="-radeon" 27,198 KiB
[ebuild     U  ] sys-devel/clang-3.8.0-r100:0/3.8::gentoo [3.7.1-r100:0/3.7::gentoo] USE="static-analyzer -debug -multitarget -python" ABI_X86="(64) -32 (-x32)" 0 KiB
[blocks b      ] <=sys-devel/clang-3.8.0-r99 ("<=sys-devel/clang-3.8.0-r99" is blocking sys-devel/llvm-3.8.0-r2)
...

Total: 1002 packages (2 upgrades, 1000 reinstalls), Size of downloads: 27,198 KiB
Conflict: 1 block
Comment 1 Zac Medico gentoo-dev 2016-05-31 05:12:11 UTC
Created attachment 435896 [details]
copy of user configuration that reproduces the issue

I was able to reproduce the problem using the attached configuration together with the gentoo repository at commit 88c1f9f779abf72b6091cd5f772dfcb29151e639 (from 2016-05-19, approximately when the user reported the issue).
Comment 2 Zac Medico gentoo-dev 2016-05-31 05:24:52 UTC
The debug log shows a bunch of failed slot_operator_update_probe calls like this:

slot_operator_update_probe:
   existing child package:  (sys-devel/llvm-3.7.1-r2:0/3.7.1::gentoo, installed)
   existing parent package: (media-libs/mesa-11.2.2:0/0::gentoo, installed)
   new child package:  None
   new parent package: None

It seems pretty obvious that it has to fail in check_reverse_dependencies, since updating to llvm-3.8.0-r2 would break this dependency from the installed clang-3.7.1-r100 instance:

~sys-devel/llvm-3.7.1[clang(-),-debug,static-analyzer,abi_x86_64(-)]
Comment 3 Zac Medico gentoo-dev 2016-05-31 05:43:28 UTC
Maybe we can handle this by ignoring a broken reverse dependency when the corresponding parent package has an available update which would be compatible with the selected replacement package.
Comment 4 Brian Dolbec (RETIRED) gentoo-dev 2016-05-31 13:52:21 UTC
sounds reasonable to me
Comment 5 Zac Medico gentoo-dev 2016-06-22 07:36:36 UTC
I have a test case which reproduces this issue in the following branch:

https://github.com/zmedico/portage/tree/bug_584626
Comment 8 Zac Medico gentoo-dev 2017-02-10 18:48:06 UTC
Fixed in portage-2.3.3.