HPM hanging

Having an issue with HPM 1.8.7. When I run an update it hangs and only indicates "Update chosen" in the logs.

I tried repairing HPM, but it also hangs and only says "Executing repair" in the logs.

I uninstalled and reinstalled HPM by importing from the URL and I'm right back at the same spot.

I have rebooted, tried turning on (and configuring) login security, tried turning it back off.

I'm at a loss.

Any suggestions?


Here's everything I have in the log after 9 minutes:

This has worked in the past.

The next step after "Update chosen" is to get each of the package json files from their repos. Not being successful would point to a network problem. Most repos are out on Github, but a DNS problem that doesn't resolve names would be an example of a network problem.

If I go to Install and browse by tags, it runs through all of the repos. I see a boatload of errors, but it makes it through to the tag selection screen.

This is about half:

But no such activity on update or repair.

The Warnings are interesting but are just warnings, generally meaning they don't affect the workings. As you probably know, I nominated myself to be the ongoing supporter/maintainer of HPM a couple months back...

HPM is used by a great many people and unlike my own code, I chose to be very conservative when making any change. The portions of code where those warnings are generated is one of the many portions I have never touched. Which simply means those warnings would have been displayed last year. :slight_smile:

I see the warnings also and I'll add investigating it to my ToDo list. :slight_smile:

Your first message is related to doing an Update, but your most recent message is related to doing an Install. I "touched" Install to add "Fast Search", have never "touched" Update. Which, again, means only that it's not likely to be a new issue... when I do investigate, an early step will be to roll back my development hub to HPM v1.8.2 (dcmeglio final version) to confirm.

I've done about 5 Installs this morning and I did find a flawed repository of one person, it didn't affect the functioning, except for their one package.

I have not been able to reproduce the 'hang'.

1 Like

I'm in software by trade, so I wasn't accusing anyone of breaking anything. :slight_smile:

I'll start by thanking you for taking up the mantle. An often thankless job, but much appreciated by everyone who uses the software.

With regard to my issue, I recognize that something is off and I'm not quite sure where to look to fix it. I've gone through my repertoire of troubleshooting and am stumped. I'm not aware of anything I've updated/changed that might have triggered it, which suggests corruption of something somewhere.

I'm very happy to assist in whatever way I can to help resolve this and provide any other info (rogue warnings :wink: ) to improve apps and the platform.

I got my hands dirty and wrote a driver for our wifi-enabled dog door, that I'm not quite ready to publish, but plan to at some point, hoping others can make use of it.

I've also started having issues where some of my rules aren't triggering when expected, leaving lights on, or off, to my frustration. I suspect there may be something broader at work, but I'm always hesitant to reset, as I have a lot of devices that take quite some time to reconfigure, sometimes even with backups.

Again, anything I can do to assist in diagnosing this issue, or anything else, really, please let me know.

I'd try a simple step first and then perhaps a bigger one...

First, do a Repair on HPM itself. This will simply overwrite the current code with the master that's out on github.

A larger choice would be to remove HPM entirely, then install it again. I would rarely suggest this because you have to go through the Match Up process again. One click per app makes my finger tired :slight_smile:

In the upper right of every page is:
Screen Shot 2022-08-16 at 11.14.21 AM
to assist in making sure the latest version is running.

Because you've admitted to "software by trade" I'll explain where I'm looking to identify a flaw.

logDebug "Update chosen"
state.updatesNotified = false
updateDetails = [:]
optionalItemsToShow = [:]
atomicState.backgroundActionInProgress = true

The log message you're seeing (in your first message) was "Update Chosen" and as you can see, next is reseting things ready to scan for an update. Then performUpdateCheck is run in 1 ms.

	for (pkg in state.manifests) {
			setBackgroundStatusMessage("Checking for updates for ${state.manifests[pkg.key].packageName}")
			def manifest = getJSONFile(pkg.key)

That's where your list of installed packages (state.manifests) are cycled through, reading in each manifest in turn.

The point is, there's nothing between "Update chosen" and "Checking for Update..." that could be significantly flawed.

In other words, my logs for this (stripped of date/time and package name to make it more crystal clear) is:

debug Updates complete
info Upgrading Hub info
info Downloading Hub info
debug Performing update
debug prefPkgVerifyUpdates
debug Updates available
debug Updates available
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
debug Updates found package for
debug Updates found for package
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
info Checking for updates for
debug Update chosen
debug Refreshing repository list
debug Refreshing repository list

My log is showing exactly what I'd expect.. 6 packages with no updates, a package with an update , then 7 packages with no update. The updates are acquired and installed, Done. :smiley:

Since there's nothing astonishingly complex in that chunk of code between two log messages, I'm thinking there's something flawed in your specific hub... Network, was the first guess, code is corrupt is the second guess (Repair) and the manifest list is corrupt (remove/reinstall HPM) as my third guess.

Download the Hubitat app