Opened 18 months ago

Closed 6 months ago

Last modified 5 months ago

#66186 closed defect (fixed)

invalid command name "::registry::entry807"

Reported by: FaradayLight (Faraday Light) Owned by: jmroot (Joshua Root)
Priority: Normal Milestone: MacPorts 2.9.0
Component: base Version: 2.8.0
Keywords: ventura Cc: phriedrich
Port:

Description

While performing a normal upgrade of packages on the host system the following error was encountered:

--->  Updating database of binaries
--->  Scanning binaries for linking errors
--->  Found 2 broken files, matching files to ports      
--->  Found 1 broken port, determining rebuild order
You can always run 'port rev-upgrade' again to fix errors.
The following ports will be rebuilt: netpbm @10.99.03+x11
Continue? [Y/n]: Y
--->  Computing dependencies for netpbm
--->  Cleaning netpbm
--->  Scanning binaries for linking errors
--->  Found 2 broken files, matching files to ports
--->  Found 1 broken port, determining rebuild order
--->  Rebuilding in order
     netpbm @10.99.03_1+x11
--->  Computing dependencies for netpbm
--->  Fetching distfiles for netpbm
--->  Verifying checksums for netpbm
--->  Extracting netpbm
--->  Applying patches to netpbm
--->  Configuring netpbm
--->  Building netpbm
--->  Staging netpbm into destroot                       
--->  Unable to uninstall netpbm @10.99.03_1+x11, the following ports depend on it:
--->  	groff @1.22.4_6
Warning: Uninstall forced.  Proceeding despite dependencies.
--->  Deactivating netpbm @10.99.03_1+x11
--->  Cleaning netpbm
--->  Uninstalling netpbm @10.99.03_1+x11
--->  Cleaning netpbm
--->  Computing dependencies for netpbm
--->  Installing netpbm @10.99.03_1+x11
--->  Activating netpbm @10.99.03_1+x11
--->  Cleaning netpbm
Error: rev-upgrade failed: invalid command name "::registry::entry807"
Error: Follow https://guide.macports.org/#project.tickets if you believe there is a bug.

Change History (8)

comment:1 Changed 18 months ago by ryandesign (Ryan Carsten Schmidt)

Cc: ryandesign removed
Component: portsbase
Keywords: ventura added; Ventura removed
Port: netpbm removed
Summary: netpbm @10.99.03+x11 - Rebuild fails with "invalid command name" errorinvalid command name "::registry::entry807"

The rebuild of netpbm did not fail; it succeeded.

It would have been nice to see the debug output of rev-upgrade before rebuildling to know why a rebuild was necessary. Now that a rebuild has happened, we can't find out anymore.

invalid command name "::registry::entry807" sounds like a base bug. It has nothing to do with the netpbm port or any other port.

comment:2 Changed 18 months ago by FaradayLight (Faraday Light)

My apologies I was going by the error statement but misinterpreted it.

I will keep your comment in mind should I encounter a similar issue in the future.

comment:3 Changed 18 months ago by phriedrich

Cc: phriedrich added

comment:4 Changed 6 months ago by jmroot (Joshua Root)

Owner: set to jmroot
Resolution: fixed
Status: newclosed

In 980a5c1e1cefd818b7000b88e2911781d7ad9c6d/macports-base (master):

_upgrade: fix possible error doing dependents

Avoid using registry entries that could potentially have been
uninstalled since they were obtained.

Closes: #66186

comment:5 Changed 6 months ago by jmroot (Joshua Root)

In 1abd73ac761e5bf8ebdfe95950609d8059e3fd9f/macports-base (master):

revupgrade: avoid possible TOCTOU error

Make sure not to use registry entries after they could potentially have
been uninstalled.

Closes: #66186

comment:6 Changed 6 months ago by jmroot (Joshua Root)

These were the only cases I could find where code involved in rev-upgrade could have used invalidated registry entries in some circumstances. Unfortunately, there's not enough information to confirm that this fixes your issue. Please reopen if you find a way to reproduce the issue, and provide a log or debug output containing a traceback showing where the invalid entry is used.

comment:7 Changed 6 months ago by jmroot (Joshua Root)

Milestone: MacPorts Future

comment:8 Changed 5 months ago by jmroot (Joshua Root)

Milestone: MacPorts FutureMacPorts 2.9.0
Note: See TracTickets for help on using tickets.