Opened 13 years ago
Closed 13 years ago
#32874 closed defect (fixed)
SuiteSparse keeps rebuilding
Reported by: | ryandesign (Ryan Carsten Schmidt) | Owned by: | macports-tickets@… |
---|---|---|---|
Priority: | Normal | Milestone: | |
Component: | ports | Version: | 2.0.3 |
Keywords: | Cc: | bpabbott@… | |
Port: | SuiteSparse |
Description
Sometimes a port builds twice. Here is an example:
$ port outdated SuiteSparse The following installed ports are outdated: SuiteSparse 3.7.0_0 < 3.4.0_0 (epoch 0 < 20120107) $ sudo port -u upgrade SuiteSparse Password: ---> Fetching archive for SuiteSparse ---> Attempting to fetch SuiteSparse-3.4.0_0+universal.darwin_10.i386-x86_64.tbz2 from http://packages.macports.org/SuiteSparse ---> Fetching SuiteSparse ---> Attempting to fetch SuiteSparse-3.4.0.tar.gz from http://ykf.ca.distfiles.macports.org/MacPorts/mpdistfiles/SuiteSparse ---> Verifying checksum(s) for SuiteSparse ---> Extracting SuiteSparse ---> Applying patches to SuiteSparse ---> Configuring SuiteSparse ---> Building SuiteSparse ---> Staging SuiteSparse into destroot ---> Installing SuiteSparse @3.4.0_0+universal ---> Cleaning SuiteSparse ---> Uninstalling SuiteSparse @3.4.0_0+universal ---> Fetching archive for SuiteSparse ---> Attempting to fetch SuiteSparse-3.4.0_0+universal.darwin_10.i386-x86_64.tbz2 from http://packages.macports.org/SuiteSparse ---> Attempting to fetch SuiteSparse-3.4.0_0+universal.darwin_10.i386-x86_64.tbz2 from http://packages.macports.org/SuiteSparse ---> Attempting to fetch SuiteSparse-3.4.0_0+universal.darwin_10.i386-x86_64.tbz2 from http://packages.macports.org/SuiteSparse ---> Attempting to fetch SuiteSparse-3.4.0_0+universal.darwin_10.i386-x86_64.tbz2 from http://packages.macports.org/SuiteSparse ---> Fetching SuiteSparse ---> Verifying checksum(s) for SuiteSparse ---> Extracting SuiteSparse ---> Applying patches to SuiteSparse ---> Configuring SuiteSparse ---> Building SuiteSparse ---> Staging SuiteSparse into destroot ---> Installing SuiteSparse @3.4.0_0+universal ---> Deactivating SuiteSparse @3.7.0_0+universal ---> Activating SuiteSparse @3.4.0_0+universal ---> Cleaning SuiteSparse ---> Uninstalling SuiteSparse @3.7.0_0+universal $
- Why did MacPorts build SuiteSparse @3.4.0_0+universal a second time when it had just succeeded at building and installing it?
- Why on the second time did it try four times to download the binary?
Attached is what remains of the logfile; it seems to be from the second build only.
Attachments (1)
Change History (7)
Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Attachment: | main.log.bz2 added |
---|
comment:1 Changed 13 years ago by bpabbott@…
comment:2 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Cc: | bpabbott@… added |
---|
bpabbott, your output does not show SuiteSparse trying to fetch the package or rebuilding the port multiple times; it only shows it trying to fetch the package and rebuilding the port once. What is the command you use to update the Octave port?
comment:3 Changed 13 years ago by bpabbott@…
My local octave port is called "octave-local". Each time I install or update ...
sudo port install octave-local
Suitesparse-3.4.0_0 is deactivated, cleaned, fetched, and built ... even though it was already installed.
comment:4 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
I see. Well that does sound odd and I'm not sure why it happens. It also doesn't sound like the issue in this ticket, though perhaps both issues have the same cause. Perhaps it has somehow to do with the fact that SuiteSparse's epoch is nonzero -- we had both a 3.4.0_0 at epoch 0 and a 3.4.0_0 at epoch 20120107. Perhaps that is confusing MacPorts somehow. In fact, SuiteSparse also existed at 3.4.0_1 epoch 0 and 3.4.0_2 epoch 0, so really its revision should have been set to 3 when its epoch was increased. You could try editing the SuiteSparse Portfile and setting the revision to 3 and rebuilding it one more time, then see if future rebuilds of your octave-local still trigger a SuiteSparse rebuild. If not, let us know and we can increase the revision to 3 in the official SuiteSparse Portfile.
comment:5 Changed 13 years ago by bpabbott@…
My SuiteSparse portfile contained ...
name SuiteSparse version 3.4.0 epoch 20120107 categories math science platforms darwin maintainers nomaintainer license GPL-2+ LGPL-2.1+
I added the revision line and set it to 3.
name SuiteSparse version 3.4.0 revision 3 epoch 20120107 categories math science platforms darwin maintainers nomaintainer license GPL-2+ LGPL-2.1+
After an initial "sudo port upgrade SuiteSparse", I'm now able to upgrade Octave without rebuilding SuiteSparse.
Thanks
comment:6 Changed 13 years ago by ryandesign (Ryan Carsten Schmidt)
Component: | base → ports |
---|---|
Port: | SuiteSparse added |
Resolution: | → fixed |
Status: | new → closed |
Summary: | Sometimes a port builds twice → SuiteSparse keeps rebuilding |
Thanks for verifying that. I had assumed this was a MacPorts base bug, and was merely citing SuiteSparse as the most recently example I had seen, but it looks like it is just a SuiteSparse-specific issue in which the epoch/version/revision were not updated in accordance with required practices. The issue was brought up again on macports-users just now. I've committed the revision update in r89910.
I'm seeing the same effect. I do development for Octave. Each time I try to update my Octave port, it begins with the sequence below.