webCoRE for Hubitat Updates

Just updated to the latest version here. I use tasker for communication between our phones and webcore. After updating I'm getting errors when I send a message from tasker to any of my pistons locally.

java.io.ioexception:gzip finished without exhausting source.

Can't say I have any clue what this means. Seems like the piston is still executing correctly it's just tasker that's throwing up an error. I can ignore the error in tasker so no big deal but wanted to check if this error is normal or if tasker is unable to handle the new gzip replies.

Thanks

1 Like

The version numbers baffle me.

Apparently I have 1.093 installed. But I don't see how this is relevant to 0.3.114.



I updated today and am now seeing the following error in my pistons that are using the trigger: stays unchanged

Error calling comparison comp_stays_unchanged:groovy.lang.MissingMethodException: No signature of method: static user_app_ady624_webCoRE_Piston_453.comp_changes() is applicable for argument types: (java.util.LinkedHashMap, java.util.LinkedHashMap, null, null, java.util.LinkedHashMap, null) values: [[ffTo:-9, running:false, logging:0, pep:false, cache:[c:3:false, ...], ...], ...]

pushed an update for this - sorry for trouble.

I’ve just upgraded HE to 2.3.9.158 which stated faster compile times.
Now WC has successfully upgraded through HPM. It still took quite a while, but hopefully this is now fixed.

5 Likes

Still didn't work for me on my C8 Pro with the latest HE ver 2.3.9.158:

I tried a second time and this time it looked like it was going to work, but still failed.

After this, the hub completely locked up. I had to reboot via x.x.x.x:8081....

3rd time was a charm....

For safe measure, I went back into HPM and performed a Repair on WebCore and it was successful.


Success! I updated to 2.3.159 and then upgraded webCoRE through HPM to the latest. From the logs, it looks like it took about 2 1/2 minutes start to finish. I am now on a C8 Pro hub, which probably helped as well.

Updated to .158 just to try this out.
Sailed through in a bit over 6 minutes on my C7.

You can add me to the list as well. Webcore updated via HPM with no issues.

I did not have as good of luck

Error Occurred During Installation
An error occurred while installing the package: Failed to upgrade app https://raw.githubusercontent.com/imnotbob/webCoRE/hubitat-
patches/smartapps/ady624/webcore-piston.src/webcore-piston.groovy.
Be sure the package is not in use with devices.

Updated two C8 hubs to 2.3.159 then used HPM to update webCoRE and it successfully did so on both hubs.

Were you at least able to update?

I have a different issue on my C8 hub which I believe is related to updating webCore. The hub is at my holiday home and I don't do updates if I'm not here. Early this morning I did an update via Package Manager, which failed. After that, it seems as if webCore has lost connection with devices. Pistons don't control devices and are not triggered by devices. Time Scheduled pistons run, but don't do anything as far as device control is concerned.
I have tried the following:

  • Manually updated the apps by importing the code.
  • Repaired the webCore installation with Package Manager.
  • Again ran an update of webCore in Package Manager - reported all apps are up to date
  • Rebooted the hub many times, even unplugging power during one reboot.
  • Refreshed devices by going into webCore Settings as if I want to select a device.
  • Did the last-mentioned again and added two devices.
    Other information that might be relevant:
  • I can open pistons and make changes to them in webCore
  • webCoRe is not paused or disabled
  • webCoRe reports the following under the Engine block - Cast iron heading:
    v0.3.114.20220203 HE: v0.3.114.20240115_HE - June 24, 2024.
    None of the above made a difference and webCore fails to respond to any changes in the state of devices.
    Any suggestions would be appreciated as it will save my holiday if I can resolve this issue.
    Thank you.
    Edit:
    I've just noticed the following error messages in the hub's log:

And the following error regarding one of the pistons:
dev:1632024-07-17 11:16:15.044warnCall to on failed: status code: 500, reason phrase: Internal Server Error
Error regarding different piston:
app:1002024-07-17 11:14:56.852warnmethod curPState of child app Illuminance: Turn Night-time State Off (Sufficient Light) ran for 190,367ms
Yet another one:
app:1162024-07-17 10:53:13.273debug ║ Device missing from piston. Loading all from parent (155ms)
(If I opten the piston with this error, the devices are listed and nothing seems to be wrong with the piston.)

I hope that will help to diagnose the problem. Thanks.

Do you have something externally call a piston end point to execute? (a lot?)

  • or does that piston being called have long execution time?

That reads like there is something hard hitting an endpoint for execute piston.

Do you have a noisy device causing a lot of events?

The other messages you show about loading are normal after a reboot.

Both of these are guesses with limited information.

When you look at HE apps performance data, does It show things running a lot ? ie

HE console -> logs
app stats
device stats

Those specific errors are being generated by HE system (ie webcore receives them, but they are produced by the core HE system.

Thanks for your input.
WebCore has been running without issues or changes to the pistons for nearly a year. There were no issues before I updated it via HPM, so something must have gone wrong during the update.
The system, fortunately, made a scheduled backup about 3 hours before I did the update yesterday morning. I realised that after posting and decided to rather restore the update than try to troubleshoot the issue, as I'll only be at this property for a few days. Luckily, the backup was restored fine, and all is well.
Due to the aforesaid limited time, I'll try the update next time I'm down here.
Thanks again for your interest.

How would I determine an EOF when reading a string file? I can parse newlines and load data into an arrary. I just need to know how to terminate my parsing loop.

Having a puzzling issue... I have my sump pump on a GFI. To detect if the GFI trips, I put a zigbee outlet with the goal of detecting if the zigbee outlet lost power.
I setup a webcore piston that part of it checks that the health of the zigbee outlet is online (see below). I hear the message that the sump pump is dead indicating that the outlet went offline...but whenever I look at the health under the device it looks online. I then created a simple webcore piston to detect when the health changes and speak and it never does... how can that be?

Health status is not normally populated by HE although some community drivers are starting to use it.

Thanks for the quick response... can you explain a little more? I see the attribute in the device and in webcore... in the device it says online and when I unplugged it, it eventually went offline

I have the same check in my setup. I had to put a wait period in, i.e. offline for 4 min. I also did a "refresh" and checked for it being offline again, before flagging it for attention. It seems there are times the hub gets so busy, it doesn't go out & check device status until the load eases up.