#44353: rpm @ 4.4.9 segfault querying rpm files ---------------------+------------------- Reporter: ric@… | Owner: afb@… Type: defect | Status: new Priority: Normal | Milestone: Component: ports | Version: 2.3.1 Resolution: | Keywords: Port: rpm | ---------------------+------------------- Comment (by afb@…): Okay, the problem is when the old rpm is trying to open an old sqlite database that hasn't been initialized. {{{ D: Expected size: 806196 = lead(96)+sigs(344)+pad(0)+data(805756) D: Actual size: 806196 D: opening sql db /opt/local/var/lib/rpm/Packages (Packages) mode=0x2 D: stat on Packages nkeys 2 D: opening sql db /opt/local/var/lib/rpm/Pubkeys (Pubkeys) mode=0x2 D: Unable to open database: unable to open database file D: closed sql db Pubkeys Segmentation fault }}} If you create the database first, by importing the required key, there is no segfault with the signed package. {{{ $ /opt/local/bin/gpg --recv-key a8a447dce8562897 gpg: requesting key E8562897 from hkp server keys.gnupg.net gpg: key E8562897: public key "CentOS-5 Key (CentOS 5 Official Signing Key) <centos-5-key@centos.org>" imported gpg: no ultimately trusted keys found gpg: Total number processed: 1 gpg: imported: 1 $ /opt/local/bin/gpg --export --armor e8562897 > e8562897.asc $ sudo /opt/local/bin/rpm --import e8562897.asc }}} This is similar to the crash seen with the regular database*. I suppose one could backport the lazy db init ? * #12999 Newer versions (since 4.5) don't need to run --initdb any longer. http://rpm5.org/community/rpm-devel/1443.html -- Ticket URL: <https://trac.macports.org/ticket/44353#comment:6> MacPorts <http://www.macports.org/> Ports system for OS X