#712 gmsh reader crashes in parallel case when used in the ALUGridSimplex 3D grid factory
Metadata
Property | Value |
---|---|
Reported by | Benedikt Oswald (benedikt.oswald@psi.ch) |
Reported at | Jan 20, 2010 12:17 |
Type | Bug Report |
Version | Git (pre2.4) [autotools] |
Operating System | Unspecified / All |
Last edited by | Martin Nolte (nolte@mathematik.uni-freiburg.de) |
Last edited at | Apr 21, 2010 06:24 |
Description
Dear Dune, when the gmsh reader is used in combination with the ALUGrid simplex grid factory in 3d in parallel mode, the respective code crashes when I use the feature to insertBoundarySegments.
I discussed this with Robert Klöfkorn today and he suggested that the behavior may not yet be defined in the parallel case.
While I classified this task as a 'Bug Report' it might as well be called a 'Feature Request'. I just write this from a pure user's perspective where reading gmsh files in parallel is of considerable important, especially to also read the element and boundary id (segment) information.
We would appreciate very much if you can comment on this.
Thanks and greetings, Benedikt
pcp029897:test oswald$ mpirun -np 2 ./gmshreadertest
Reading 3d Gmsh grid...
version 2 Gmsh file detected
file contains 23908 nodes
Reading 3d Gmsh grid...
version 2 Gmsh file detected
file contains 23908 nodes
file contains 139304 elements
file contains 139304 elements
terminate called after throwing an instance of 'Dune::GridError'
[pcp029897:29148] *** Process received signal ***
[pcp029897:29148] Signal: Abort trap (6)
[pcp029897:29148] Signal code: (0)
[pcp029897:29148] [ 0] 2 libSystem.B.dylib 0x900702bb _sigtramp + 43
[pcp029897:29148] [ 1] 3 ??? 0xffffffff 0x0 + 4294967295
[pcp029897:29148] [ 2] 4 libSystem.B.dylib 0x900e423a raise + 26
[pcp029897:29148] [ 3] 5 libSystem.B.dylib 0x900f0679 abort + 73
[pcp029897:29148] [ 4] 6 libstdc++.6.dylib 0x93dd4005 _ZN9__gnu_cxx27__verbose_terminate_handlerEv + 445
[pcp029897:29148] [ 5] 7 libstdc++.6.dylib 0x93dd210c __gxx_personality_v0 + 1108
[pcp029897:29148] [ 6] 8 libstdc++.6.dylib 0x93dd214b _ZSt9terminatev + 29
[pcp029897:29148] [ 7] 9 libstdc++.6.dylib 0x93dd2261 __cxa_throw + 101
[pcp029897:29148] [ 8] 10 gmshreadertest 0x0003b4bf _ZN4Dune16ALU3dGridFactoryINS_14ALUSimplexGridEE12insertVertexERKNS_11FieldVectorIdLi3EEE + 303
[pcp029897:29148] [ 9] 11 gmshreadertest 0x000c54d0 _ZN4Dune16GmshReaderParserINS_14ALUSimplexGridILi3ELi3EEELi3EE18pass1HandleElementEP7__sFILEiRSt3mapIijSt4lessIiESaISt4pairIKijEEERKSt6vectorINS_11FieldVectorIdLi3EEESaISH_EE + 976
[pcp029897:29148] [10] 12 gmshreadertest 0x000c65f1 _ZN4Dune20GmshReaderParserBaseINS_14ALUSimplexGridILi3ELi3EEENS_16GmshReaderParserIS2_Li3EEEE4readERKSs + 3585
[pcp029897:29148] [11] 13 gmshreadertest 0x00005064 main + 1796
[pcp029897:29148] [12] 14 gmshreadertest 0x00002776 start + 54
[pcp029897:29148] *** End of error message ***
number of real vertices = 23908
number of boundary elements = 5216
number of elements = 134088
--------------------------------------------------------------------------
mpirun noticed that process rank 1 with PID 29148 on node pcp029897.psi.ch exited on signal 6 (Abort trap).
--------------------------------------------------------------------------
The code used is:
std::vector<int> boundaryId2physicalEntity;
boundaryId2physicalEntity.clear();
std::vector<int> elementIndex2PhysicalEntity;
elementIndex2PhysicalEntity.clear();
Dune::GmshReader< ALUSimplexGridType >::read<int>(factory,
GMSH_FILE_NAME,
boundaryId2physicalEntity,
elementIndex2PhysicalEntity,
true,
true);