Bug 3128 - Incremental RPM generation doesn't work with 1.3 M4 branch
Summary: Incremental RPM generation doesn't work with 1.3 M4 branch
Status: VERIFIED FIXED
Alias: None
Product: OE-Core
Classification: Build System, Metadata & Runtime
Component: core (show other bugs)
Version: 1.3
Hardware: x86 Multiple
: Medium normal
Target Milestone: 1.3 M5
Assignee: Robert Yang
QA Contact:
URL:
Whiteboard:
Depends on:
Blocks:
 
Reported: 2012-09-18 15:25 UTC by Stefan Stanacar
Modified: 2012-10-09 05:47 UTC (History)
8 users (show)

See Also:
OS type for building Yocto: ---
Type of Regression: ---
Verified:
Documentation change: ---


Attachments
first log.do_rootfs (378.77 KB, application/octet-stream)
2012-09-18 15:26 UTC, Stefan Stanacar
no flags Details
second log.do_rootfs (2.14 KB, application/octet-stream)
2012-09-18 15:26 UTC, Stefan Stanacar
no flags Details

Note You need to log in before you can comment on or make changes to this bug.
Description Stefan Stanacar 2012-09-18 15:25:00 UTC
Build Configuration:
BB_VERSION        = "1.15.3"
TARGET_ARCH       = "x86_64"
TARGET_OS         = "linux"
MACHINE           = "qemux86-64"
DISTRO            = "poky"
DISTRO_VERSION    = "1.2+snapshot-20120918"
TUNE_FEATURES     = "m64"
TARGET_FPU        = ""
meta              
meta-yocto        
meta-yocto-bsp    = "1.3_M4:e5c3513ca8abb21eb5e9b8c19d1b9199b14ae07c"


1. Add INC_IMAGE_GEN = "1" to conf/local.conf
2. bitbake core-image-sato
3. bitbake bzip2 -cclean; bitbake bzip2 -ccleansstate
4. bitbake core-image-sato

log.do_rootfs for the last bitbake shows that the rootfs is reconstructed instead of just adding that one package.
Comment 1 Stefan Stanacar 2012-09-18 15:26:00 UTC
Created attachment 813 [details]
first log.do_rootfs
Comment 2 Stefan Stanacar 2012-09-18 15:26:30 UTC
Created attachment 814 [details]
second log.do_rootfs
Comment 3 Robert Yang 2012-09-19 02:23:41 UTC
Hi Stefan,

Thanks for reporting this, but I'm afraid that this is not a bug, here are the explanations:

1) We have divided the rootfs generation into 3 steps in a normal build:
   a) Initial install: install the base-passwd, base-files and shadow package
   b) Main install: Most of the packages will be installed here.
   c) Complementary install: Usually, the locale packages

2) In the incremental image generation (The second build):
   a) Initial install: skipped
   b) Main install: The incremental image generation happened here, it need remove the "Complementary install" packages completely since we don't know which complementary package is needed (suppose several packages have been removed).
   c) Complementary install: Re-generated the packages and install them, it must be generated based on the rootfs from main install, different main install will cause different complementary packages.

There are similar explanations in the package_rpm.bbclass. So what in the second log.do_rootfs are the complementary packages, usually , the complementary list is not long, there are 18 packages as the log shows. I hope this help, please let me know if you have any questions.
Comment 4 Robert Yang 2012-09-24 09:41:29 UTC
The latest change to package_rpm.bbclass broke the incremental image generation again, the error is:

cat initial_solution.manifest: No such file or directory

it's not the same error as this bug described, but it may change the result of the complementary installation, so I re-opened it.
Comment 6 Yi Zhao 2012-10-09 05:47:00 UTC
Verified with 1.3 M5 RC3. 
gitinfo: danny/86c9aa8081f107420cd3763d0566d779daddc2b1