CI failure in “Build and test / main (Python 3.11)” not related to PR?

I would like to merge an update for the addon r.in.vect, but the CI job “Build and test / main (Python 3.11) (pull_request)” is failing. As far as I can tell, the failure does not seem to be related to the changes in my pull request.

From the rather lengthy log it is difficult for me to pinpoint the exact cause, but it appears that at least part of the failure may be related to the use of format=‘plain’ in several test calls to GRASS modules (e.g., v.surf.rst.cv, v.to.rast.multi).

I’m not very familiar with the testing framework, so I’m unsure whether this is something straightforward to fix or if there is already a known issue. I mainly wanted to flag it here in case someone more familiar with the tests immediately recognizes the problem.

If there is something I can reasonably do on my side to help resolve it, I’m happy to try.

I don’t think it is exactly were you think the error is, but the last commits were all passing, but since, the scheduled test job this morning (4am my time) failed. I could also go on my computer and compare if the number of built addons changed between a passing and a failing run, as the build scripts ignore failures if I recall correctly.

The workaround solution would be to change the success threshold, to match the minimum that works.

But if you want to help too, I saw a couple of test failures failing at the same place of r.random.walk, because of a division by zero determining the memory for a process:

File "scripts/r.random.walk", line 419, in main
    mem_for_process = math.floor(int(memory) / processes)
                                 ~~~~~~~~~~~~^~~~~~~~~~~
ZeroDivisionError: division by zero

It seems something easy to fix that would help some tests pass

@nila Do you think the recent PR on compiler annotations (lib/gis: improve diagnostic capabilities for compilers and/or static analyzers by nilason · Pull Request #7172 · OSGeo/grass · GitHub) made the build more severe, and caught a r.watershed buffer overflow:

ERROR: setUpClass (__main__.TestHand)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "etc/python/grass/gunittest/case.py", line 1320, in runModule
    module.run()
  File "etc/python/grass/pygrass/modules/interface/module.py", line 849, in run
    self.wait()
  File "etc/python/grass/pygrass/modules/interface/module.py", line 868, in wait
    raise CalledModuleError(
grass.exceptions.CalledModuleError: Module run `r.watershed elevation=elevation threshold=50000 convergence=5 memory=300 drainage=test_direction stream=test_stream_rast --q` ended with an error.
The subprocess ended with a non-zero return code: -6. See the following errors:
*** buffer overflow detected ***: terminated


During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "raster/r.hand/testsuite/test_r_hand.py", line 52, in setUpClass
    cls.runModule(
  File "etc/python/grass/gunittest/case.py", line 1337, in runModule
    raise CalledModuleError(
grass.exceptions.CalledModuleError: Module run `r.watershed(elevation='elevation', threshold=50000, drainage='test_direction', stream='test_stream_rast', convergence=5, memory=300, quiet=True)` ended with an error.
The subprocess ended with a non-zero return code: -6. See the following errors:
*** buffer overflow detected ***: terminated

There’s more than one failure with different inputs in addons that use r.watershed in the test run I’m looking at. Maybe we could have a test that recreates a situation like that.

On 14 Mar 2026, at 22:42, Edouard Choinière noreply@discourse.osgeo.org wrote:

echoix
March 14

@nila Do you think the recent PR on compiler annotations (lib/gis: improve diagnostic capabilities for compilers and/or static analyzers by nilason · Pull Request #7172 · OSGeo/grass · GitHub) made the build more severe, and caught a r.watershed buffer overflow:

Doesn’t strike me as likely.

Meaning that it might be possible, or you do not think it is possible?

In the last commit in addons, r.hand test passes: r.manning: from land cover to manning's n values (#1613) · OSGeo/grass-addons@3ddc671 · GitHub

But in the scheduled job, for the same commit the day after (and after the annotation PR), it has a buffer overflow detected in: Build and test · OSGeo/grass-addons@3ddc671 · GitHub

So, it must have helped discover it (not cause it).

Filed issue:

1 Like