Bug 21749 - RPM segfaults if /var is full.
RPM segfaults if /var is full.
Status: CLOSED WONTFIX
Product: Red Hat Linux
Classification: Retired
Component: rpm (Show other bugs)
6.2
i386 Linux
medium Severity medium
: ---
: ---
Assigned To: Jeff Johnson
David Lawrence
:
Depends On:
Blocks:
  Show dependency treegraph
 
Reported: 2000-12-05 11:33 EST by Dag Wieers
Modified: 2007-04-18 12:30 EDT (History)
0 users

See Also:
Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of:
Environment:
Last Closed: 2001-08-24 19:23:37 EDT
Type: ---
Regression: ---
Mount Type: ---
Documentation: ---
CRM:
Verified Versions:
Category: ---
oVirt Team: ---
RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: ---


Attachments (Terms of Use)

  None (edit)
Description Dag Wieers 2000-12-05 11:33:23 EST
I noticed the following problem when using rpm on an ftp-server, eg.

	rpm -Fhv ftp://cube0/pub/redhat/updates/6.2/i386/*.rpm

when /var is full (because of recurring dependency-problems when more than
one release of a package is on a mirror-site eg. pam-0.72-20 and
pam-0.72-20.6.x).

RPM doesn't seem to clean up its /var filesystem AND it segfaults when it
doesn't have space available for downloading packages using a temporary
name.

-- dag wieers, dag@mind.be, http://mind.be/ --
                Out of swap, out of luck.
Comment 1 Jeff Johnson 2001-03-22 22:04:35 EST
/var is also where the rpm database lives. Graceful behavior with ENOSPC returns
from
the file system on which the active/open database resides is not gonna happen
soon
Comment 2 Jeff Johnson 2001-07-29 13:11:50 EDT
The db-3.3.11 used in rpm-4.0.3 claims graceful behavior under
ENOSPC conditions. Time will tell ...
Comment 3 Dag Wieers 2001-08-24 19:23:32 EDT
I'm going to my old bug-reports and want to add this.

This bug was about 2 bugs in rpm, the first one is causing the second in a way.
I should have made this clearer.

 1. If rpm downloads packages but cannot install them, it keeps them stored
somewhere in /var and does not clean them. (Not in my case anyway)
    The bad thing is that the filename is not kept and you have to query each
and everyone. Plus: packages that were not downloaded fully were kept too...
    Filling your /var-partition more and more (with every try)

 2. If /var-partition is full it segfaults, where it should not segfault anyway.
    It could check on beforehand if it is already full and quite with a nice  
message and/or check during downloading...

I'm not sure whether both bugs are solved already. (Is not in the changelog
anyway so I reopened it.)
Comment 4 Jeff Johnson 2001-08-25 09:48:30 EDT
Yes, space in /var/tmp is needed for downloads, and
on errors the packages are not cleaned up so that
you have a prayer of debugging the problem.

Yes, the file names are goofy, this is a side effect
of using the makeTempFile API which permits
a configurable %{_tmppath} to be prepended.
The file name will be changed at some point,
use another means to download packages
if the name bothers you.

No, rpm should not (can not?) check for all
possible failure conditions like ENOSPC on
/var. Perform normal system administration
duties instead.

Note You need to log in before you can comment on or make changes to this bug.