On Nov 21, 2013, at 5:04 AM, bishwajit goswami wrote:
> Hi Sriram,
>
> Thanks for your reply.
> The dbpath in my case is set properly as usr/local/rpm5. root assigned as /tmp is supposed to create the rpmdb using dbpath /tmp/usr/local/rpm5/.
> I am already working with RPM 5.1.9 compiled with internal Berkley and everything works fine, except when I try to use the same dbpath to be queried by RPM 4.8 causing RPMDB incompatibility.
>
So you want rpm-5.1.9 and rpm-4.8.x to be able to query the same database?
These are rpm releases from different projects with different goals.
rpm-5.1.9.src.rpm was released on April 18, 2009:
/files/rpm/rpm-5.1/
rpm-4.8.0.tar.bz2 was released on June 11, 2010:
http://rpm.org/releases/rpm-4.8.x/
Its kinda hard to test rpm-5.1.9 interoperability with rpm-4.8.0 source
code that hadn't been written at the time of the release.
You likely can do rpm --rebuilddb with whatever version you wish
to use and achieve interoperability.
Note that in rpm-5.3 and later, ACID behavior from Berkeley DB is enabled,
which is an entirely different database model preventing transparent interoperability.
hth
73 de Jeff
> Thanks and Regards,
> Bishwajit
>
>
> ---------- Forwarded message ----------
> From: Sriram Narayanan <sriram@belenix.org>
> Date: Wed, Nov 20, 2013 at 11:18 PM
> Subject: Re: Compiling RPM-5.1.9 with external Berkley
> To: rpm-users@rpm5.org
>
>
> Let me try quoting that error again: Please see the error referring to a specific path -> "rpmdb: stat: /tmp/usr/local/rpm5/__db.
> Basenames: No such file or directory"
>
> See this for more info:
>
> http://docs.fedoraproject.org/en-US/Fedora_Draft_Documentation/0.1/html/RPM_Guide/ch19s03.html
>
> -- Ram
>
>
> On Wed, Nov 20, 2013 at 11:44 AM, Sriram Narayanan <sriram@belenix.org> wrote:
> What's your rpmdb path ?
>
> Please see the error:
>
> rpmdb: stat: /tmp/usr/local/rpm5/__db.Basenames: No such file or directory
>
>
> On Wed, Nov 20, 2013 at 9:17 AM, bishwajit goswami <bswjt.callmebish@gmail.com> wrote:
> Hi,
>
> We use Berkley DB 4.8 for some DB transactions. The DB utilities are
> already exported for Berkley DB 4.8. Berkley 4.8 is also used in our case
> to link with RPM 4.8.
>
> However, we are planning to migrate to RPM 5.1.9. As part of this
> migration, I am able to compile RPM 5.1.9 externally with Berkley 4.8. I
> can also use the built rpm for queries etc.
>
> The problem comes when I try to install a package with --nodeps and
> initialize an RPMDB. A snippet is pasted below:
>
> [root@bgl-ng-install-vxr1 rpm-5.1.9]# ./rpm -ivh --nodeps --root=/tmp
> /tmp/cai-pkg-ncs6k-64.rp_lc-5.0.0-Default.x86_64.rpm
>
> Preparing... rpmdb: DB_ENV->add_data_dir: method not
> permitted after handle's open method
>
> rpmdb: stat: /tmp/usr/local/rpm5/__db.Basenames: No such file or directory
>
> rpmdb: Basenames: No such file or directory
>
> error: cannot open Basenames(1117) index using db3 - No such file or
> directory (2)
>
> rpm: rpmdb.c:3693: rpmdbFindFpList: Assertion mi !=3D ((void *)0)'
> failed.</p>
>
> <p class=3D"MsoNormal" style=3D"margin-bottom:0.0001pt;line-height:normal">=
> Aborted (core dumped)</p>
>
> <br></div><div>I am not sure what sort of changes would be needed to get th=
> is working. <br></div><div>I looked over the forum but failed to find any p=
> atches available for RPM 5.1.9 to support external Berkley.<br></div><div>
>
> <br><br></div>Thanks and Regards,<br><div><div>Bishwajit Goswami<br>
> </div></div></div>
> </div><br></div>
>
>
>
> --
> Belenix: www.belenix.org
>
>
>
> --
> Belenix: www.belenix.org
>
>
>
>
> --
> Bishwajit Goswami
> Software Engineer,
> Cisco Systems India Pvt. Lmited
> Bangalore
Received on Thu Nov 21 13:59:03 2013