opengisch / qgis-swiss-locator

Swiss Geoadmin layer and feature search for QGIS 3
https://www.opengis.ch/2024/06/25/swiss-locator-plugin-3-0-is-here-with-exciting-features/
GNU General Public License v3.0
11 stars 4 forks source link

RuntimeError: wrapped C/C++ object of type SwissLocatorFilterFeature has been deleted #91

Open gacarrillor opened 1 month ago

gacarrillor commented 1 month ago

Attempting to replicate #52, i.e., searching repeatedly for ort lavertezzo, I stumbled upon another issue:

image

Backtrace exported from the First Aid plugin at: issue.json

gacarrillor commented 1 month ago

On the other hand, while typing a simple search (e.g., ort lavertezzo) there are tons of messages like the following in the QGIS log widget's Qt tab.

@3nids, is this expected? Do you have an idea on what could be causing it?

2024-05-28T09:44:29     WARNING    QObject: Cannot create children for a parent that is in a different thread.
             (Parent is QNetworkAccessManager(0x62571aa85cf0), parent's thread is QThread(0x625712568600), current thread is QThread(0x62571609fd10)
gacarrillor commented 1 month ago

Doing initial tests on Qt6, I was able to easily replicate this issue. A single search (don't even need to repeat it, just typing it quickly) triggered it.

I can obtain the final results for the search if I type really slowly ort lavertezzo and wait for partial results to arrive (i.e., wait the wait icon to disappear between letters).

The issue also occurs for SwissLocatorFilterLocation and SwissLocatorFilterLayer.

The log messages in Qt tab, mentioned in the comment above, also appear on Qt6.

Backtrace from First Aid plugin: issue_qt6.json


Disabling the try block (which is too broad) in swiss_locator_filter.py, handle_reply() method, I can get this error message:

https://api3.geo.admin.ch/rest/services/api/SearchServer?type=featuresearch&searchText=ort &returnGeometry=true&lang=fr&sr=2056&limit=8&features=ch.bfe.solarenergie-einstrahlung_30_grad,ch.bfe.solarenergie-einstrahlung_75_grad,ch.bfe.solarenergie-einstrahlung_90_grad,ch.bfe.statistik-wasserkraftanlagen,ch.bfe.stauanlagen-bundesaufsicht,ch.bfe.thermische-netze,ch.bfe.waermepotential-gewaesser,ch.bfe.windenergieanlagen,ch.bfs.gebaeude_wohnungs_register,ch.bfs.gebaeude_wohnungs_register_waermequelle_heizung,ch.bfs.generalisierte-grenzen_agglomerationen_g1,ch.bfs.landschaftswandel,ch.blw.bodeneignung-gruendigkeit,ch.blw.bodeneignung-kulturland,ch.blw.bodeneignung-kulturtyp,ch.blw.bodeneignung-naehrstoffspeichervermoegen,ch.blw.bodeneignung-skelettgehalt,ch.blw.bodeneignung-vernaessung,ch.blw.bodeneignung-wasserdurchlaessigkeit

Performing such request, the server answers:

{"error":{"code":404,"message":"unknown local index 'ch_bfe_solarenergie_einstrahlung_30_grad' in search request"},"success":false}