Bug report #7209

WCS client seems broken

Added by Giovanni Manghi over 6 years ago. Updated almost 6 years ago.

Status:Closed
Priority:Severe/Regression
Assignee:Radim Blazek
Category:Web Services clients/WCS
Affected QGIS version:master Regression?:No
Operating System: Easy fix?:No
Pull Request or Patch supplied:No Resolution:worksforme
Crashes QGIS or corrupts data:No Copied to github as #:16249

Description

When trying to use the WCS client on qgis master and Ubuntu 12.04 I get crashes or error messages or the layer are added as all zeroes.

For exemple using the Mapserver demo WCS server

http://demo.mapserver.org/cgi-bin/wcs

I get constantly

WCS provider: Cannot get test dataset.
Raster layer: Provider is not valid (provider: wcs, URI: cache=PreferNetwork&crs=EPSG:26915&format=GEOTIFF_INT16&identifier=modis&time=2002-001&url=http://demo.mapserver.org/cgi-bin/wcs

If I use the address

http://demo.mapserver.org/cgi-bin/wcs?SERVICE=wcs&VERSION=1.0.0&REQUEST=GetCapabilities

I get crashes

Warning: QMetaObject::connectSlotsByName: No matching signal for on_mAddWMSButton_clicked()
Segmentation fault

with other servers I'm able to add layers but they have just 0 in it.

Associated revisions

Revision a2fc3b42
Added by Radim Blazek over 6 years ago

set correctly raster block nodata if layer extent or resolution is smaller than requested, fixes #7209

History

#1 Updated by Giovanni Manghi over 6 years ago

The crashes/errors of the original description are gone, but the client still does not seems to work ok.

With the already linked Mapserver demo WCS server the layers are correctly visible only at certain scales, even if does not seems to exist such limitation at server level.

#2 Updated by Radim Blazek over 6 years ago

  • Status changed from Open to Closed

#3 Updated by Radim Blazek over 6 years ago

  • Assignee set to Radim Blazek

#4 Updated by Gavin Fleming almost 6 years ago

I'm getting this same error with QGIS master. With my own geoserver WCS I get

WCS provider: Cannot get test dataset.
Raster layer: Provider is not valid (provider: wcs, URI: ...

With the Mapserver demo service I get a black image.

Also, QGIS seems to cache the GetCapabilities? If I update the available CRS on a layer in Geoserver the new CRS is not reflecting in the QGIS WCS layer list.

Lastly, how is the spatial subset for the request supposed to be defined? I was viewing a part of south africa when I chose NDVI from the Mapserver demo and it fetched the whole ndvi extent in the US (however black), so it doesn't appear to be using the canvas extents.

related to #6056?

#5 Updated by Radim Blazek almost 6 years ago

Gavin Fleming wrote:

I'm getting this same error with QGIS master. With my own geoserver WCS I get

WCS provider: Cannot get test dataset.
Raster layer: Provider is not valid (provider: wcs, URI: ...

No more detailed message from server? Can you try to find what is wrong? Take the request URL and open it in browser and try to find what is wrong, e.g. extent etc. Is it the server public?

With the Mapserver demo service I get a black image.

Wrong values or wrong colors? Probably lost no data value? Which URL?

Also, QGIS seems to cache the GetCapabilities? If I update the available CRS on a layer in Geoserver the new CRS is not reflecting in the QGIS WCS layer list.

The dialog should respect "Cache" settings at bottom. If you switch to "Always network" it should always reload data. It does not?

Lastly, how is the spatial subset for the request supposed to be defined? I was viewing a part of south africa when I chose NDVI from the Mapserver demo and it fetched the whole ndvi extent in the US (however black), so it doesn't appear to be using the canvas extents.

The raster is treated as any other raster source, the extent reported in capabilities is taken as maximum extent. There is no additional subextent.

#6 Updated by Giovanni Manghi almost 6 years ago

  • Target version changed from Version 2.0.0 to Future Release - High Priority
  • Status changed from Closed to Reopened

On QGIS master the WCS client seems really broken, I cannot add any layer (on both Linux and Windows) by this services

http://demo.mapserver.org/cgi-bin/wcs

http://wms.pcn.minambiente.it/wcs/DES_ERO_NDVI

try 2/3 times usually leads to a crash.

#8 Updated by Paolo Cavallini almost 6 years ago

In case it is not fixed in time for QGIS 2.2, I suggest to remove it: shipping a knowingly broken service will not be good.

#9 Updated by Salvatore Larosa almost 6 years ago

Giovanni Manghi wrote:

On QGIS master the WCS client seems really broken, I cannot add any layer (on both Linux and Windows) by this services

http://demo.mapserver.org/cgi-bin/wcs

http://wms.pcn.minambiente.it/wcs/DES_ERO_NDVI

try 2/3 times usually leads to a crash.

I've really very difficulties to make crashing my QGIS (Linux - 0ca7316), please could you say to me what I should do to crash?
I tested the above URLs but I can load the dataset just fine.

#10 Updated by Giovanni Manghi almost 6 years ago

Paolo Cavallini wrote:

In case it is not fixed in time for QGIS 2.2, I suggest to remove it: shipping a knowingly broken service will not be good.

Now that QGIS server supports WCS, it would be very bad to remove the client.

#11 Updated by Giovanni Manghi almost 6 years ago

I've really very difficulties to make crashing my QGIS (Linux - 0ca7316), please could you say to me what I should do to crash?
I tested the above URLs but I can load the dataset just fine.

of course, because now it is working :)

anyway since its arrive in qgis i have seen the wcs client (apparently) stop to work many times along the qgis master development...
this is really hard to follow.

#12 Updated by Radim Blazek almost 6 years ago

The last considerable change in WCS client was 3 months ago, so I have no idea how it got broken and cured itself in the last month.

#13 Updated by aperi2007 - almost 6 years ago

Using the client wcs from last trunk,
I notice that the option "always-cache" don't seem work. It return always a message that the getcapabilities returned from wcs server is not correct.
Instead it work correctly is I use the option "always-network"

I'm not sure this is related to this ticket.

#14 Updated by Radim Blazek almost 6 years ago

"Always-cache" is also used for get capabilities, if the request failed the first time (during the server configuration for example), the response is cached. It should work again with "always-cache" if you clear cache.

It should be probably changed so that the request is always resent as "always-network" if the request failed and current mode is "always-cache" or "prefer-cache".

This is a different issue, please create a new one if you want.

#15 Updated by Giovanni Manghi almost 6 years ago

Radim Blazek wrote:

The last considerable change in WCS client was 3 months ago, so I have no idea how it got broken and cured itself in the last month.

yeah I know, this is why I wrote "apparently". Anyway now I tested also under Windows and apparently now is working. So this seems can be closed, but I agree that by default maybe would be better to use "always network".

#16 Updated by Radim Blazek almost 6 years ago

Giovanni Manghi wrote:

yeah I know, this is why I wrote "apparently". Anyway now I tested also under Windows and apparently now is working.

Unfortunately it can also mean that the bug is still there but does not manifest.

I agree that by default maybe would be better to use "always network".

Switching to "always network" by default would be bad because most WCS servers do not set correctly cache control headers (Expires, Cache-Control: max-age, ETag) so that cached requests result to be outdated with "prefer-cache". WCS without caching is usually terribly slow and users complain about speed. WCS is also understand by some people to be a data download tool, they don't have overviews etc.

I mean to repeat with "always network" only if it failed.

#17 Updated by Giovanni Manghi almost 6 years ago

  • Status changed from Reopened to Closed
  • Resolution set to worksforme

Radim Blazek wrote:

Unfortunately it can also mean that the bug is still there but does not manifest.

I understand, but anyway now seems work as expected, so I'm closing this for now. If new evidences of issues will surface I will reopen it.

Also available in: Atom PDF