Welcome to CRUX bug tracking.
FS#619 - prt-get thinks a package is installed if disk space runs out while installing a prebuilt package
Attached to Project:
CRUX
Opened by K.Mandla (K.Mandla) - Thursday, 12 August 2010, 11:38 GMT
Last edited by Fredrik Rinnestam (frinnst) - Sunday, 12 February 2017, 03:14 GMT
Opened by K.Mandla (K.Mandla) - Thursday, 12 August 2010, 11:38 GMT
Last edited by Fredrik Rinnestam (frinnst) - Sunday, 12 February 2017, 03:14 GMT
|
DetailsHello. Under Crux 2.6 and prt-get version 5.18, if the disk runs out of space while prt-get is installing a precompiled package, pkgadd will report disk space errors, but prt-get will still mark the package as installed.
This might help visualize: --- bash-4.1# prt-get depinst alpine prt-get: installing /usr/ports/local/alpine =======> Package '/usr/ports/local/alpine/alpine#2.00-1.pkg.tar.gz' is up to date. prt-get: installing alpine 2.00-1 pkgadd: could not install usr/bin/rpload: Write failed pkgadd: could not install usr/man/man1/pilot.1.gz: Write failed pkgadd: could not install usr/man/man1/rpdump.1.gz: Write failed pkgadd: could not install usr/man/man1/rpload.1.gz: Write failed pkgadd: could not install usr/man/man1/alpine.1.gz: Write failed pkgadd: could not install usr/man/man1/pico.1.gz: Write failed /sbin/ldconfig: Writing of cache data failed: No space left on device -- Packages installed alpine --- Using prt-get isinst on that package reports it as installed. If disk space is freed, the package must be "removed" before it can be installed again. Cheers and thanks! |
This task depends upon
Closed by Fredrik Rinnestam (frinnst)
Sunday, 12 February 2017, 03:14 GMT
Reason for closing: Invalid
Additional comments about closing: As stated by jw. This is not a bug with prt-get
Sunday, 12 February 2017, 03:14 GMT
Reason for closing: Invalid
Additional comments about closing: As stated by jw. This is not a bug with prt-get
Also, prt-get uses pkgadd's return value to determine whether an install transaction was successful, so I'm pretty sure that pkgadd returns with a return value of zero, thus prt-get will assume the installation worked, and thus print the package in the "Packages installed" section
The comment there states: "If a file fails to install we just print an error message and continue trying to install the rest of the package." Not sure if there's an easy way to detect "Write failed" errors, I guess these should cause pkgadd to fail