Opened 2 years ago

Closed 20 months ago

#65704 closed defect (worksforme)

MacPorts @2.7.2: port selfupdate fails due to error deleting p5-moosex-params-validate

Reported by: ekinakoglu (Ekin Akoglu) Owned by:
Priority: Normal Milestone:
Component: base Version: 2.7.2
Keywords: selfupdate, p5-moosex-params-validate Cc: jmroot (Joshua Root), raimue (Rainer Müller), ekinakoglu (Ekin Akoglu)
Port:

Description

On macOS Catalina (10.15.7 with Xcode version 12.4 (12D4e) and xcode-select version 2373) updating ports tree with sudo port selfupdate fails with error:

Error: /opt/local/bin/port: port selfupdate failed: Couldn't sync the ports tree: error deleting "/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate": file already exists

The "/opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate" cannot be deleted even manually:

$ sudo rm -rf /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate

rm: /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate: Directory not empty

however, the directory is empty:

$ ls -la /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate

total 0

drwxr-xr-x 3 500 505 96 Oct 10 2019 .

drwxr-xr-x 4 500 505 128 Jul 15 2021 ..

rmdir also does not work:

$ sudo rmdir /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate

rmdir: /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl/p5-moosex-params-validate: Directory not empty

Attachments (1)

selfupdate_terminal_output.rtf (2.2 KB) - added by ekinakoglu (Ekin Akoglu) 2 years ago.

Download all attachments as: .zip

Change History (6)

Changed 2 years ago by ekinakoglu (Ekin Akoglu)

comment:1 Changed 2 years ago by ekinakoglu (Ekin Akoglu)

Cc: ekinakoglu added

comment:2 Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Curious. Can you delete it if you first go into the directory?

$ cd /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl
$ sudo rm -rf p5-moosex-params-validate

Or can you delete a higher directory?

$ sudo rm -rf /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/perl
$ sudo rm -rf /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports

Or can you delete it in the Finder instead of in the Terminal?

You can try deleting all the way up to /opt/local/var/macports/sources/rsync.macports.org if you need to; it'll all be recreated after a successful selfupdate.

comment:3 Changed 2 years ago by ekinakoglu (Ekin Akoglu)

Hi, I could delete them only in the Finder, magical. Thank you. However, now I cannot empty the trash now. I keep getting these errors which I skip one by one:

The operation can’t be completed because the item “p5-moosex-params-validate” is in use.
The operation can’t be completed because the item “p5-net-frame-layer-ipv6” is in use.
The operation can’t be completed because the item “perl” is in use.
The operation can’t be completed because the item “ports” is in use.
The operation can’t be completed because the item “tarballs” is in use.
The operation can’t be completed because the item “release” is in use.
The operation can’t be completed because the item “macports” is in use.
The operation can’t be completed because the item “rsync.macports.org” is in use.

Further, I cannot use MacPorts. When I run % sudo port selfupdate, I get:

--->  Updating MacPorts base sources using rsync
MacPorts base version 2.7.2 installed,
MacPorts base version 2.8.0 downloaded.
--->  Updating the ports tree
--->  MacPorts base is outdated, installing new version 2.8.0
Installing new MacPorts release in /opt/local as root:wheel; permissions 0755
Error: Couldn't change permissions of the MacPorts sources at /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/base to root: child killed: kill signal
Please run `port -v selfupdate' for details.
Error: /opt/local/bin/port: port selfupdate failed: Couldn't change permissions of the MacPorts sources at /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/base to root: child killed: kill signal

comment:4 in reply to:  3 ; Changed 2 years ago by ryandesign (Ryan Carsten Schmidt)

Replying to ekinakoglu:

Hi, I could delete them only in the Finder, magical. Thank you. However, now I cannot empty the trash now. I keep getting these errors which I skip one by one:

The operation can’t be completed because the item “p5-moosex-params-validate” is in use.
The operation can’t be completed because the item “p5-net-frame-layer-ipv6” is in use.
The operation can’t be completed because the item “perl” is in use.
The operation can’t be completed because the item “ports” is in use.
The operation can’t be completed because the item “tarballs” is in use.
The operation can’t be completed because the item “release” is in use.
The operation can’t be completed because the item “macports” is in use.
The operation can’t be completed because the item “rsync.macports.org” is in use.

Does this problem persist after restarting the computer?

Further, I cannot use MacPorts. When I run % sudo port selfupdate, I get:

--->  Updating MacPorts base sources using rsync
MacPorts base version 2.7.2 installed,
MacPorts base version 2.8.0 downloaded.
--->  Updating the ports tree
--->  MacPorts base is outdated, installing new version 2.8.0
Installing new MacPorts release in /opt/local as root:wheel; permissions 0755
Error: Couldn't change permissions of the MacPorts sources at /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/base to root: child killed: kill signal
Please run `port -v selfupdate' for details.
Error: /opt/local/bin/port: port selfupdate failed: Couldn't change permissions of the MacPorts sources at /opt/local/var/macports/sources/rsync.macports.org/macports/release/tarballs/base to root: child killed: kill signal

That's #66031, which we don't know the cause of yet, but you should be able to ignore the error and continue to use MacPorts. MacPorts has been updated to 2.8.0 successfully despite the error.

comment:5 in reply to:  4 Changed 20 months ago by ryandesign (Ryan Carsten Schmidt)

Resolution: worksforme
Status: newclosed

Replying to ryandesign:

Does this problem persist after restarting the computer?

No reply; presuming restarting fixed it.

Note: See TracTickets for help on using tickets.