bugGNU Octave - Bugs: bug #58244, [octave forge] (parallel)...


bug #58244: [octave forge] (parallel) compilation warnings during build with version 6

Submitted by:  A.R. Burgers <arb>
Submitted on:  Sun 26 Apr 2020 08:06:33 AM UTC  
Category:  Octave Forge Package Severity:  2 - Minor
Priority:  3 - Low Item Group:  Installation Failure
Status:  Confirmed Assigned to:  None
Originator Name:  Open/Closed:  Open
Release:  dev Operating System:  GNU/Linux

Add a New Comment (Rich Markup)

You are not logged in

Please log in, so followups can be emailed to you.


Sun 10 May 2020 07:03:04 PM UTC, comment #4: 

I'd say this is related.

The parallel package with octave-6 seems to still use error_state based handling (src/error-helpers.h in the parallel package). The code will work, but run-time errors will not be detected because error_state is always 0 (Hence the warnings).

The configure script tests for the new exception based error handling, but the parallel package doesn't seem to use it.

A.R. Burgers <arb>
Tue 05 May 2020 07:45:56 PM UTC, comment #3: 

That seems like a separate unrelated bug report, please report that so it doesn't get lost.

Mike Miller <mtmiller>
Project Administrator
Wed 29 Apr 2020 09:50:58 AM UTC, comment #2: 

so it appears that 4.0.0 with octave-6 and later does not throw errors yet. e.g.

pkg load parallel;
pkg_ver = ver('parallel')
ver = version

vec = 1:2;
  cf_out = arrayfun(@(x) x(2), vec)
catch me
  fprintf('arrayfun threw an error\n');

  pcf_out = pararrayfun(3, @(x) x(2), vec)
catch me
  fprintf('pararrayfun threw an error\n');

with 5.2.1 and 3.1.3 both arrayfun and pararrayfun throw errors:

pkg_ver = scalar structure containing the fields:
    Name = parallel
    Version = 3.1.3
    Release = [](0x0)
    Date = 2018-08-03
ver = 5.2.1

arrayfun threw an error
parcellfun: 0/2 jobs done
warning: parcellfun: unhandled error in subprocess 2

pararrayfun threw an error

with 6.0.0 and 4.0.0 arrayfun throws an error in this example, and pararrayfun does not and produces output. pararrayfun does provide more informative error messages on what went wrong in the children than 3.1.3

pkg_ver = scalar structure containing the fields:
    Name = parallel
    Version = 4.0.0
    Release = [](0x0)
    Date = 2020-04-11

ver = 6.0.1
arrayfun threw an error
error: x(2): out of bound 1
error: x(2): out of bound 1
pcf_out =
  -1  -1

A.R. Burgers <arb>
Mon 27 Apr 2020 06:53:42 PM UTC, comment #1: 


Mike Miller <mtmiller>
Project Administrator
Sun 26 Apr 2020 08:06:33 AM UTC, original submission:  

While building the parallel package with 4.0.0 and octave 6.0.1/7.0.0, gcc 9.3.0 I get multiple warnings like these. Is that expected?

In file included from select.cc:25:
error-helpers.h:121:13: warning: 'error_state' is deprecated: [6]: this variable is obsolete and always has the value 0 [-Wdeprecated-declarations]
  121 |             error_state = 0; \

A.R. Burgers <arb>


(Note: upload size limit is set to 16384 kB, after insertion of the required escape characters.)

Attach Files:

No files currently attached


Depends on the following items: None found

Items that depend on this one: None found


Carbon-Copy List
  • -email is unavailable- added by arb (Submitted the item)

    Do you think this task is very important?
    If so, you can add your encouragement to it.
    This task has 0 encouragements so far.

    Only project members can vote.




    Follow 6 latest changes.

    Date Changed by Updated Field Previous Value => Replaced by
    2020-04-27 mtmiller Severity3 - Normal => 2 - Minor
        Priority5 - Normal => 3 - Low
        Item GroupBuild Failure => Installation Failure
        StatusNone => Confirmed
        Release6.0.90 => dev
        Summary[octave-forge](parallel) 4.0.0: compilation warnings during build with 6.0.1 => [octave forge] (parallel) compilation warnings during build with version 6

    Back to the top

    Powered by Savane 3.7