Bug report #12307

QGIS server rule based rendering based on joined layers results in "End of script output before headers: qgis_mapserv.fcgi"

Added by Tudor Bărăscu over 4 years ago. Updated over 4 years ago.

Status:Closed
Priority:High
Assignee:Marco Hugentobler
Category:QGIS Server
Affected QGIS version:2.8.1 Regression?:No
Operating System:Debian, QGIS 2.8.1 Easy fix?:No
Pull Request or Patch supplied:No Resolution:fixed/implemented
Crashes QGIS or corrupts data:No Copied to github as #:20485

Description

I have chased this issue for several days.
Having a project with joined layers and I want to use rule based styling; If I encompass any of the joined layers in the filter, the following error appears in QGIS Server.

In QGIS Desktop everything is working fine.

mod_fcgid: error reading data, FastCGI server closed connection, referer: http://..
qgis_mapserv.fcgi, referer: http://...

History

#1 Updated by Tudor Bărăscu over 4 years ago

Tested also on Ubuntu Trusty and the same error appears in QGIS Server.

Also, I just noticed that the problems appears only when there are at least 2 joined layers.

For just one joined layer, everything works ok: styling with filtering based on a joined layer column works, data defined properties based on joined layer column also work etc.

As soon as I add a second joined layer:

a) if using rule based styling based on any column of any joined layer the features don't show up at all

b) if using data defined properties based on any column of any joined layer in any symbology type (single symbol, categorized, graduated etc.), the features do get drawn but they ignore any logic from data defined properies.

All this, without adding another filter from the second joined layer. Just adding the second join layer the server doesn't work properly.

Basically, the outcome of the issue is that features are not rendered at all in QGIS server, or they are rendered improperly.

All the best

#2 Updated by Giovanni Manghi over 4 years ago

  • Status changed from Open to Feedback

For just one joined layer, everything works ok: styling with filtering based on a joined layer column works, data defined properties based on joined layer column also work etc.

As soon as I add a second joined layer, the filtering doesn't work anymore, data defined properties based on any column of any joined layer doesn't work. All this, without adding any filter from the second joined layer. Just a simple join layer.

Also, I noticed the issue appears in data-defined-properties for every styling mode (single symbol, categorized, graduated etc.).

all this is on qgis desktop or server? on the desktop I joined a layer with two csv tables and filtering (in rule based renderer) and data defined symbology seems to work ok here.

Why you tagged this as blocker? in a previous qgis release in the same conditions it was working as expected?

#3 Updated by René-Luc ReLuc over 4 years ago

  • Assignee set to Marco Hugentobler

It's a regression affected QGIS Server.

#4 Updated by Tudor Bărăscu over 4 years ago

In Desktop everything works as it should.
Only in the server the problem arises.
From your questions I am now understanding that blocker should only be when it was working before.
I tested with QGIS 2.4 on Ubuntu 12.04 and issue is present.
I am using postgis layers.
All the best

#5 Updated by Denis Rouzaud over 4 years ago

  • Status changed from Feedback to Open
  • Priority changed from Severe/Regression to High

#6 Updated by Marco Hugentobler over 4 years ago

  • Status changed from Open to Closed

Should be fixed

#7 Updated by Giovanni Manghi over 4 years ago

  • Resolution set to fixed/implemented

Also available in: Atom PDF