Remove db environment on close on chrooted operations
authorPanu Matilainen <pmatilai@redhat.com>
Wed, 16 Sep 2009 12:36:44 +0000 (15:36 +0300)
committerPanu Matilainen <pmatilai@redhat.com>
Wed, 16 Sep 2009 12:47:11 +0000 (15:47 +0300)
commitf3d2c4a9f92ffc399cf8ed5bebdac1531081ffd9
treeb00bb2632655a7c4ce73214b408f35ac42736c5e
parentc339c3614484642b178716b0ccca88bb6ad3c20c
Remove db environment on close on chrooted operations
- As we open the db from outside the chroot, the environment ends up
  containing paths that are not valid once we enter the chroot causing
  dumb issues like RhBug:513699 and RhBug:507309.
- We'd be better off removing the environment always after access but
  limiting to chroots for now as the rpmdb open/close path is full of races
  when environment is not present. Chroots are somewhat special environemnts
  anyway and typically not concurrently accessed so it's less of an issue
  there.
- While this still has all sorts of issues, it at least leaves the rpmdb
  in chroot in a functional state after initial install.
lib/backend/db3.c
lib/rpmdb.c