[OE-core] [PATCH 2/2] package_manager.py: ignore failed smart install with --attempt

Paul Eggleton paul.eggleton at linux.intel.com
Fri Oct 3 11:01:06 UTC 2014


Hi Hongxu,

On Friday 26 September 2014 19:36:02 Hongxu Jia wrote:
> Paul's patch added checking in smart to ignore failed install with --attempt
> ...
> commit e9c1191da4f84c9743b053e7030ab28b48f57c44
> Author: Paul Eggleton <paul.eggleton at linux.intel.com>
> Date:   Thu Feb 6 13:39:01 2014 +0000
> 
>     python-smartpm: really ignore conflicts during install with --attempt
> ...
> 
> But if the failure is generated by rpm which smart doesn't resolve, we check
> the output of smart, filter the failed packages, and attempt to install the
> rest.
> 
> Here is an example, assume there are two packages which have identical file
> name but different content, that cause confliction. If we install one
> without --attempt, after it installed and install another with --attempt,
> the rpm will generate an error which smart does not resolve:
> ...
> 
> |error: file /usr/share/man/man5/passwd.5 from install of
> 
> shadow-doc-4.2.1-r0.i586 conflicts with file from package
> man-pages-3.71-r0.i586
> 
> |error: file /usr/share/man/man3/getspnam.3 from install of
> 
> shadow-doc-4.2.1-r0.i586 conflicts with file from package
> man-pages-3.71-r0.i586
> ...
> 
> In this situation, remove failed packages, and attempt to install the rest.

Apologies for the delay in reviewing this.

I see what you're trying to do here. However I am concerned about the other 
kinds of failure cases we might end up obscuring with this kind of approach. 
My understanding of attemptonly is that it should ignore conflicts, but any 
other kind of error should trigger build failure - otherwise you can miss 
genuine errors that need to be fixed.

If possible I would prefer if we would detect and handle this kind of conflict 
within smart itself and allow it to continue rather than detecting the failure 
and retrying externally.

Mark (on CC), any opinions?

Cheers,
Paul



-- 

Paul Eggleton
Intel Open Source Technology Centre



More information about the Openembedded-core mailing list