Creating table columns in a parfor loop
Show older comments
Found this buggy behaviour when creating tables in a parfor loop. The first example (doesn't work) causes the parallel pool worker to crash and gives a "Segmentation Violation" error in the crash dump file. However, in the second example (works), including any character that needs escaping (i.e. -, +, etc) in the table column title avoids the error.
%doesnt work
parpool('local', 1);
parfor i=1
temptab = table();
temptab.('var1') = ['a';'b'];
end
%works
parpool('local', 1);
parfor i=1
temptab = table();
temptab.('var-1') = ['a';'b'];
end
6 Comments
Matt J
on 7 Jan 2024
Something in your environment. Both work fine for me.
Raymond Norris
on 7 Jan 2024
I tried this with R2023b on Windows 11 and the first example crashed for me as well. Which versions/OS are you guys running @asdfg asdfg @Matt J?
Damian Pietrus
on 9 Jan 2024
@Raymond Norris First example crashes for me as well, also on R2023b and Win 11. The R2024a Prerelease works for me correctly however
asdfg asdfg
on 9 Jan 2024
Matt J
on 9 Jan 2024
R2023b Windows 10.
Raymond Norris
on 10 Jan 2024
@asdfg asdfg has problems with R2023b (Mac)
@Matt J works fine with R2023b (Windows 10)
My next thought is the release Update. But I'm runnig GR (Update 0) and Damian's running the latest (Update 5).
@asdfg asdfg if you need this working on macOS R2023b, I'd suggest contacting MathWorks Technical Support. Otherwise, consider trying R2024a Prerelease.
Answers (0)
Categories
Find more on Matrix Indexing in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!