Opened 13 years ago

Last modified 6 years ago

#30622 new enhancement

port should output a message when vacuuming registry

Reported by: vinc17@… Owned by: macports-tickets@…
Priority: Normal Milestone:
Component: base Version: 2.0.1
Keywords: Cc: dliessi (Davide Liessi)
Port:

Description

When I uninstall a port with "port -v", the last output message is "Removing work directory for...". But then port vacuums the registry, which takes much more time than removing the work directory. So, port should output a message for that, e.g. "Vacuuming registry".

Change History (5)

comment:1 Changed 13 years ago by kurthindenburg (Kurt Hindenburg)

It is easy enough to add a 'ui_info "---> Closing registry"' anytime the registry is closed. If you want only when the DB is vacuumed, that appears to be more difficult.

comment:2 Changed 10 years ago by dliessi (Davide Liessi)

Cc: davide.liessi@… added

Cc Me!

comment:3 in reply to:  1 Changed 10 years ago by dliessi (Davide Liessi)

Replying to kurt.hindenburg@…:

It is easy enough to add a 'ui_info "---> Closing registry"' anytime the registry is closed.

This would be good, in my opinion.

comment:4 Changed 10 years ago by neverpanic (Clemens Lang)

I'd actually favor printing a message when the registry is actually being vacuumed, especially if we're going to change when and how often that happens. ---> Closing registry IMO leaves the question open why closing something takes so long.

I know it's a little harder, because the vacuuming is actually being done from C code, but it can still be done, for example by moving the explicit vacuum call to Tcl or by implementing an on_vacuum callback.

comment:5 Changed 6 years ago by RJVB (René Bertin)

As far as I'm concerned print just something like ---> Finishing up is good enough. Mere users and even port maintainers aren't really supposed to be concerned with exactly what goes on with/in the registry, are they? And for a more "animated" progress message: can't you get the DB engine to output something while it work (preferably appending to that "Finishing up" message)?

It would of course be even nicer if those lengthy house-keeping operations could happen in the background. But I guess for that you'd have to access the registry via server process, no? Or would it be possible to fork() (possibly even in the Tcl code), exit the parent and do the clean-up in the child?

Version 0, edited 6 years ago by RJVB (René Bertin) (next)
Note: See TracTickets for help on using tickets.