When I try to uninstall a marketplace binding, it instantly gets reinstalled (no restart of openhab nor clean cache performed - simply an uninstall from MainUI). Despite triple attempts to reinstall the binding and warnings it gets reinstalled.
2025-01-12 18:07:44.131 [INFO ] [rketplace.AbstractRemoteAddonService] - Re-installing missing add-ons from remote repository: [marketplace:152184]
2025-01-12 18:07:44.321 [INFO ] [rketplace.AbstractRemoteAddonService] - Re-installing missing add-ons from remote repository: [marketplace:152184]
2025-01-12 18:07:44.747 [INFO ] [rketplace.AbstractRemoteAddonService] - Re-installing missing add-ons from remote repository: [marketplace:152184]
2025-01-12 18:07:45.408 [WARN ] [ity.CommunityMarketplaceAddonService] - Unable to retrieve marketplace add-ons: Server returned HTTP response code: 429 for URL: https://community.openhab.org/c/marketplace/69/l/latest?page=13
2025-01-12 18:07:45.447 [WARN ] [ity.CommunityMarketplaceAddonService] - Unable to retrieve marketplace add-ons: Server returned HTTP response code: 429 for URL: https://community.openhab.org/c/marketplace/69/l/latest
I don’t think it is an expected behaviour. I would expect this function to run after a a clean cache when openhab restarts.
Can anybody sched some light?
I am on 4.3.0
The managed file that controls which marketplace add-ons get installed is userdata/jsondb.org.openhab.marketpalce.json and the jar file gets saved to userdata/marketpalce/bundles (unlike regular addons which get saved to userdata/cache).
After trying to delete the add-on, do you still have an entry for it in the marketplace.json file?
Another interesting thing:
The above behaviour appear when uninstalling webhook binding.
When I try to uninstall viessmann binding I see the following reproducible reaction where also my openhabcloud connection is shutting down:
edit:
Another observation: When uninstalling, the spinning wheel is permanently visible. However, a look at userdata/marketplace shows that it is actually removed
2025-01-12 18:46:52.131 [INFO ] [io.openhabcloud.internal.CloudClient] - Shutting down openHAB Cloud service connection
2025-01-12 18:46:52.133 [WARN ] [io.openhabcloud.internal.CloudClient] - Socket.IO disconnected: io client disconnect
2025-01-12 18:46:52.133 [INFO ] [io.openhabcloud.internal.CloudClient] - Disconnected from the openHAB Cloud service (UUID = db...9d, base URL = http://localhost:8080)
2025-01-12 18:46:52.553 [WARN ] [ax.web.service.spi.model.ServerModel] - ServletModel{id=ServletModel-124,name='cxf-servlet',urlPatterns=[/*],contexts=[{WB,OCM-1,default,/}]} can't be registered now in context / under "/*" mapping. Conflict with ServletModel{id=ServletModel-29,name='/',urlPatterns=[/*],contexts=[{WB,OCM-1,default,/}]}.
2025-01-12 18:46:52.554 [WARN ] [ax.web.service.spi.model.ServerModel] - Skipped registration of ServletModel{id=ServletModel-124,name='cxf-servlet',urlPatterns=[/*],contexts=[{WB,OCM-1,default,/}]} because of existing mappings. Servlet will be added as "awaiting registration".
2025-01-12 18:46:52.706 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.707 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.718 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.740 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.756 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.780 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.798 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.812 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.828 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.845 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.860 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.882 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.909 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.935 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:52.970 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.018 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.047 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.075 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.102 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.132 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.172 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.183 [WARN ] [.transport.servlet.ServletController] - Can't find the request for http://192.168.178.61:8080/rest/events's Observer
2025-01-12 18:46:53.190 [WARN ] [.transport.servlet.ServletController] - Can't find the request for http://192.168.178.61:8080/rest/services/org.openhab.i18n/config's Observer
2025-01-12 18:46:53.190 [WARN ] [.transport.servlet.ServletController] - Can't find the request for http://192.168.178.61:8080/rest/addons/suggestions's Observer
2025-01-12 18:46:53.191 [WARN ] [.transport.servlet.ServletController] - Can't find the request for http://192.168.178.61:8080/rest/addons/services's Observer
2025-01-12 18:46:53.212 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.253 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.301 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.344 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.389 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.436 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.485 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.542 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.599 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.658 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.711 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.768 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.824 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.904 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:53.972 [INFO ] [e.io.rest.internal.filter.CorsFilter] - enabled CORS for REST API.
2025-01-12 18:46:54.123 [INFO ] [io.openhabcloud.internal.CloudClient] - Connected to the openHAB Cloud service (UUID = db...9d, base URL = http://localhost:8080)
I’ve not seen this behavior before and it’s definitely strange. I don’t have any further debug ideas so I guess the next step is to file an issue. This is probably to do with core so I would start there.
The weird problem with viessmann marketplace binding still remains (see above). Could this be related to the fact that the binding doesn’t install itself in
/userdata/marketplace/bundles
but
/userdata/marketplace/kar?
Just asking as you were mentioning just the bundles directory.
No, that shouldn’t have anything to do with what you are seeing on that binding. All marketpalce bindings are stored there and there’s nothing about them being there that would cause the cloud connection to restart.