[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Octave-bug-tracker] [bug #58271] [octave-forge](parallel) 4.0.0: classd
From: |
A.R. Burgers |
Subject: |
[Octave-bug-tracker] [bug #58271] [octave-forge](parallel) 4.0.0: classdef objects in arguments pose issues |
Date: |
Wed, 29 Apr 2020 03:58:01 -0400 (EDT) |
User-agent: |
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/64.0.3282.140 Safari/537.36 Edge/18.17763 |
URL:
<https://savannah.gnu.org/bugs/?58271>
Summary: [octave-forge](parallel) 4.0.0: classdef objects in
arguments pose issues
Project: GNU Octave
Submitted by: arb
Submitted on: Wed 29 Apr 2020 07:57:59 AM UTC
Category: Octave Forge Package
Severity: 3 - Normal
Priority: 5 - Normal
Item Group: Regression
Status: None
Assigned to: None
Originator Name:
Originator Email:
Open/Closed: Open
Release: 6.0.90
Discussion Lock: Any
Operating System: Any
_______________________________________________________
Details:
Consider the following script. It will work with cellfun and fork based
pre-4.0.0 parcellfun, but error with 4.0.0 parcellfun:
pkg load parallel;
pkg_ver = ver('parallel')
ver = version
ci = containers.Map({'a','b','c'}, {1,2,3});
cf_out = cellfun(@(x) ci(x)*2, ci.keys)
pcf_out = parcellfun(3, @(x) ci(x)*2, ci.keys)
pre - 4.0.0 output:
pkg_ver = scalar structure containing the fields:
Name = parallel
Version = 3.1.3
Release = [](0x0)
Date = 2018-08-03
ver = 5.2.1
cf_out =
2 4 6
parcellfun: 3/3 jobs done
pcf_out =
2 4 6
4.0.0 output:
pkg_ver = scalar structure containing the fields:
Name = parallel
Version = 4.0.0
Release = [](0x0)
Date = 2020-04-11
ver = 6.0.1
cf_out =
2 4 6
error: octave_base_value::save_binary(): wrong type argument 'object'
error: clone: invalid object
I think this is related to bug#45831. In the fork based approach the fork call
takes care of the copying of data to the childeren, without need for
serialization. In the new approach the data is serialized and sent to the
childeren.
For returning data from the childeren the fork based approach already used
serialization.
If this assessment is correct, then this is not a bug in the parallel package,
but rather a manifestation of the absence of serialization capability for
classdef objects in octave.
_______________________________________________________
Reply to this item at:
<https://savannah.gnu.org/bugs/?58271>
_______________________________________________
Message sent via Savannah
https://savannah.gnu.org/
[Prev in Thread] |
Current Thread |
[Next in Thread] |
- [Octave-bug-tracker] [bug #58271] [octave-forge](parallel) 4.0.0: classdef objects in arguments pose issues,
A.R. Burgers <=