[Bug 224871] `make fetchindex' may leave a corrupt INDEX file

bugzilla-noreply at freebsd.org bugzilla-noreply at freebsd.org
Wed Jan 3 17:15:10 UTC 2018


https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=224871

            Bug ID: 224871
           Summary: `make fetchindex' may leave a corrupt INDEX file
           Product: Ports & Packages
           Version: Latest
          Hardware: Any
                OS: Any
            Status: New
          Severity: Affects Only Me
          Priority: ---
         Component: Ports Framework
          Assignee: portmgr at FreeBSD.org
          Reporter: wosch at FreeBSD.org
                CC: freebsd-ports-bugs at FreeBSD.org

In /usr/ports/Makefile is a target fetchindex to fetch the latest INDEX file
for the given OS.

$ cd /usr/ports; make fetchindex

In case of an error the target will fail with an error status, but leaves the
./INDEX file in an undefined corrupt state. An error can occurs if the disk is
full, or the kernel kills the bunzip2 command (e.g. out of swap).

Example:

$ make fetchindex
bunzip2: I/O or other error, bailing out.  Possible reason follows.
bunzip2: No space left on device
        Input file = (stdin), output file = (stdout)
*** Error code 1

Stop.
make: stopped in /home/projects/freebsd-ports

$ du -hs INDEX-12
 32M    INDEX-12

The expected size is 36MB.

The problem is in the line
    bunzip2 < ${INDEXDIR}/${INDEXFILE}.bz2 > ${INDEXDIR}/${INDEXFILE}

-- 
You are receiving this mail because:
You are on the CC list for the bug.


More information about the freebsd-ports-bugs mailing list