Bug report #20502

Problem with GRASS 7 algorithms that call GRASS scripts under Windows

Added by Pedro Venâncio almost 2 years ago. Updated almost 2 years ago.

Status:Closed
Priority:Normal
Assignee:-
Category:GRASS
Affected QGIS version:3.4.1 Regression?:No
Operating System:Windows Easy fix?:No
Pull Request or Patch supplied:No Resolution:
Crashes QGIS or corrupts data:No Copied to github as #:28322

Description

QGIS 3.4.1 under Windows still give problems with some GRASS 7 algorithms that call GRASS scripts, like r.mapcalculator or r.fillnulls, that call other GRASS scripts during execution.

https://github.com/qgis/QGIS/blob/master/python/plugins/processing/algs/grass7/Grass7Utils.py#L396

For instance r.fillnulls:

Processing algorithm…
Algorithm 'r.fillnulls' starting…
Input parameters:
{ 'GRASS_RASTER_FORMAT_META' : '', 'GRASS_RASTER_FORMAT_OPT' : '', 'GRASS_REGION_CELLSIZE_PARAMETER' : 0, 'GRASS_REGION_PARAMETER' : None, 'edge' : 3, 'input' : 'D:/SIG/MDT/dem_srtm_pttm06_80m.tif', 'lambda' : 0.01, 'method' : 2, 'npmin' : 600, 'output' : 'C:/Users/pedro.venancio/AppData/Local/Temp/processing_0296f1191e9248e9828bd46e64a4ccf9/2a4a391e222b47feb9ddf544646428a2/output.tif', 'segmax' : 300, 'smooth' : 0.1, 'tension' : 40 }

g.region n=0.0 s=0.0 e=0.0 w=0.0 res=100.0
r.fillnulls input=rast_5bed4e3d900da3 method="rst" tension=40 smooth=0.1 edge=3 npmin=600 segmax=300 lambda=0.01 output=outputf5b1a64ddd0f455abcd3c3b8ce2285f4 --overwrite
g.region raster=outputf5b1a64ddd0f455abcd3c3b8ce2285f4
r.out.gdal -t -m input="outputf5b1a64ddd0f455abcd3c3b8ce2285f4" output="C:\Users\pedro.venancio\AppData\Local\Temp\processing_0296f1191e9248e9828bd46e64a4ccf9\2a4a391e222b47feb9ddf544646428a2\output.tif" format="GTiff" createopt="TFW=YES,COMPRESS=LZW" --overwrite
Cleaning up temporary files...
Starting GRASS GIS...
WARNING: Concurrent mapset locking is not supported on Windows
Executing <C:\Users\pedro.venancio\AppData\Local\Temp\processing_0296f1191e9248e9828bd46e64a4ccf9\grassdata\grass_batch_job.cmd> ...
C:\OSGeo4W64\bin>chcp 65001 1>NUL
C:\OSGeo4W64\bin>g.region n=0.0 s=0.0 e=0.0 w=0.0 res=100.0
ERROR: North must be larger than South
C:\OSGeo4W64\bin>r.fillnulls input=rast_5bed4e3d900da3 method="rst" tension=40 smooth=0.1 edge=3 npmin=600 segmax=300 lambda=0.01 output=outputf5b1a64ddd0f455abcd3c3b8ce2285f4 --overwrite
ERROR: Input map has no holes. Check region settings.
Execution of <C:\Users\pedro.venancio\AppData\Local\Temp\processing_0296f1191e9248e9828bd46e64a4ccf9\grassdata\grass_batch_job.cmd> finished.
Cleaning up temporary files...
Press any key to continue . . .
Traceback (most recent call last):
File "C:/OSGEO4~1/apps/qgis-rel-dev/./python/plugins\processing\algs\grass7\Grass7Algorithm.py", line 413, in processAlgorithm
Grass7Utils.executeGrass(self.commands, feedback, self.outputCommands)
File "C:/OSGEO4~1/apps/qgis-rel-dev/./python/plugins\processing\algs\grass7\Grass7Utils.py", line 411, in executeGrass
startupinfo=si if isWindows() else None
File "C:\OSGEO4~1\apps\Python37\lib\subprocess.py", line 756, in __init__
restore_signals, start_new_session)
File "C:\OSGEO4~1\apps\Python37\lib\subprocess.py", line 1155, in _execute_child
startupinfo)
OSError: [WinError 87] O parâmetro está incorreto

Execution failed after 16.50 seconds

Loading resulting layers
The following layers were not correctly generated.<ul><li>C:/Users/pedro.venancio/AppData/Local/Temp/processing_0296f1191e9248e9828bd46e64a4ccf9/2a4a391e222b47feb9ddf544646428a2/output.tif</li></ul>You can check the 'Log Messages Panel' in QGIS main window to find more information about the execution of the algorithm.

The new r.mapcalculator (https://github.com/qgis/QGIS/pull/8444) have the same problem under Windows.

This seems somehow related with these already closed tickets: #16186 #20146 #20281

Associated revisions

Revision 42e30b65
Added by Luigi Pirelli almost 2 years ago

Merge pull request #8557 from juanmpd/patch-1

Update Grass7Utils.py. Fixes #20632 #20502

History

#1 Updated by Juan Manuel Perez almost 2 years ago

Just to point that we also found a similar (perhaps duplicate) problem reported in #20632

#3 Updated by Luigi Pirelli almost 2 years ago

  • % Done changed from 0 to 100
  • Status changed from Open to Closed

Also available in: Atom PDF