Different rpm-database layouts and rpm-versions

When using chroot-based builds the bootstrapping of the initial chroot-environment happens from the host. When using the host rpm-version, a later rpmbuild within the chroot may fail since the database format can not be understood by it. E.g. the rpm from Fedora Core 1 will create /var/.../root/var/lib/rpm/Packages in db4.1 format. Now, rpmbuild from RHL7.3 understands db3 format only and will fail therefore.

Another effect when bootstrapping with newer/other rpm versions might be a changed behavior of rpm. E.g. rpm-4.2.1 introduced strict epoch handling and will fail on lots of RHL9 or previous packages.

Status: solved by using different rpm binaries

disttag-replacement requires a disttag for clean update-paths. Since there does not exist any policy for packagers how this should happen, it is very difficultly to change the disttag at mass-builds. mach's methods are crude heuristics and are failing at some packages.

Status: most packages are working with the replace-old-suffix-with-new-one method, but a formal policy (forbid disttags entirely, or enforce usage of overridable %{?disttag}) would be highly appreciated.