MantisBT - ParaView
View Issue Details
0008746ParaView(No Category)public2009-03-16 18:472011-01-13 17:00
Alan Scott 
Utkarsh Ayachit 
highcrashalways
closedfixed 
 
3.63.6 
0008746: Reading file crashes ParaView
ParaView trunk, local server, XP
Open files lapjoint_hex.e.2.* (Ask Berk for this set of files if you are at Kitware, ask Alan if you are at Sandia)
Apply.
Select variable stress_
Apply
Crash

This crash happens in the ExodusIIReader.cxx, in function GetCacheOrRead, line 2029.
No tags attached.
Issue History
2009-03-16 18:47Alan ScottNew Issue
2009-03-16 18:58Alan ScottNote Added: 0015707
2009-03-17 10:01Utkarsh AyachitNote Added: 0015711
2009-05-06 22:28Alan ScottNote Added: 0016327
2009-05-06 22:28Alan ScottStatusbacklog => @80@
2009-05-06 22:28Alan ScottResolutionopen => fixed
2009-05-06 22:28Alan ScottAssigned To => Alan Scott
2009-05-07 20:52Alan ScottNote Added: 0016346
2009-05-07 20:52Alan ScottStatus@80@ => @20@
2009-05-07 20:52Alan ScottResolutionfixed => reopened
2009-05-07 20:52Alan ScottAssigned ToAlan Scott =>
2009-05-07 20:52Alan ScottStatus@20@ => tabled
2009-05-07 20:52Alan ScottAssigned To => Utkarsh Ayachit
2009-05-07 20:52Alan ScottStatustabled => @20@
2009-05-13 13:44Utkarsh AyachitTarget Version => 3.6
2009-05-15 20:06Alan ScottNote Added: 0016500
2009-05-19 13:07Utkarsh AyachitNote Added: 0016534
2009-05-19 13:07Utkarsh AyachitStatus@20@ => @80@
2009-05-19 13:07Utkarsh AyachitFixed in Version => 3.6
2009-05-19 13:07Utkarsh AyachitResolutionreopened => fixed
2009-05-26 21:13Alan ScottNote Added: 0016576
2009-05-26 21:13Alan ScottStatus@80@ => closed
2011-01-13 17:00Source_changeset_attached => VTK master a2bd8391
2011-01-13 17:00Source_changeset_attached => VTK master 020ef709
2011-06-16 13:10Zack GalbreathCategory => (No Category)

Notes
(0015707)
Alan Scott   
2009-03-16 18:58   
by the way, I believe that stress_ is actually a tensor. Seems to work in the one file version of this data, not in the two files version.
(0015711)
Utkarsh Ayachit   
2009-03-17 10:01   
Couldn't not reproduce the crash on 64 bit linux. Trying on windows vista.
(0016327)
Alan Scott   
2009-05-06 22:28   
I want to recheck this, since Utkrash couldn't replicate it.
(0016346)
Alan Scott   
2009-05-07 20:52   
Still crashes with XP.
(0016500)
Alan Scott   
2009-05-15 20:06   
I was able to have this crash, and it opened up a debugger. Stack trace is as follows:

     msvcp80d.dll!std::_Debug_message(const wchar_t * message=0x05322a10, const wchar_t * file=0x0531af40, unsigned int line=756) Line 24 C++
     vtkHybrid.dll!std::vector<double,std::allocator<double> >::operator[](unsigned int _Pos=0) Line 756 + 0x17 bytes C++
> vtkHybrid.dll!vtkExodusIIReaderPrivate::GetCacheOrRead(vtkExodusIICacheKey key={...}) Line 2032 + 0x1b bytes C++
     vtkHybrid.dll!vtkExodusIIReaderPrivate::AssembleOutputCellArrays(int timeStep=0, int otyp=1, int obj=0, vtkExodusIIReaderPrivate::BlockSetInfoType * bsinfop=0x088afa58, vtkUnstructuredGrid * output=0x0b534870) Line 1019 + 0x2e bytes C++
     vtkHybrid.dll!vtkExodusIIReaderPrivate::RequestData(int timeStep=0, vtkMultiBlockDataSet * output=0x0b3f2b90) Line 4626 C++
     vtkHybrid.dll!vtkExodusIIReader::RequestData(vtkInformation * __formal=0x0b4aed00, vtkInformation * __formal=0x0b4aed00, vtkInformationVector * outputVector=0x0b092450) Line 5652 C++
     vtkHybrid.dll!vtkExodusIIReader::ProcessRequest(vtkInformation * request=0x0b4aed00, vtkInformationVector * * inputVector=0x00000000, vtkInformationVector * outputVector=0x0b092450) Line 5472 + 0x1e bytes C++
     vtkFiltering.dll!vtkExecutive::CallAlgorithm(vtkInformation * request=0x0b4aed00, int direction=1, vtkInformationVector * * inInfo=0x00000000, vtkInformationVector * outInfo=0x0b092450) Line 748 + 0x21 bytes C++


I think the problem may be the following code:
(file vtkexodususiireader.cxx, line 2028)

        vtkIdType N = arr->GetNumberOfTuples();
        tmpVal[c].resize( N );
        if ( ex_get_var( exoid, key.Time + 1, static_cast<ex_entity_type>( key.ObjectType ),
            ainfop->OriginalIndices[c], oinfop->Id, arr->GetNumberOfTuples(),
            &tmpVal[c][0] ) < 0)


arr->GetNumberOfTuples() is returning 0, which isn't being handled well.
(0016534)
Utkarsh Ayachit   
2009-05-19 13:07   
Avoid assert when number of tuples == 0.

CVS Head====
/cvsroot/ParaView3/ParaView3/VTK/Hybrid/vtkExodusIIReader.cxx,v <-- VTK/Hybrid/vtkExodusIIReader.cxx
new revision: 1.77; previous revision: 1.76

3.6. Branch=====
/cvsroot/ParaView3/ParaView3/VTK/Hybrid/vtkExodusIIReader.cxx,v <-- VTK/Hybrid/vtkExodusIIReader.cxx
new revision: 1.76.2.1; previous revision: 1.76
(0016576)
Alan Scott   
2009-05-26 21:13   
Tested local server.