null pointer in MinMax

Created by: philip-davis

I'm doing a large streaming file run with gray-scott coupled to pdf_calc on Theta, and I am sometimes (not always) seeing pdf_calc crash with many of the following strangely-formatted errors:

terminate called after throwing an instance of 'terminate called after throwing an instance of 'terminate called after throwing an instance of 'std::invalid_argument'
std::invalid_argument'
std::invalid_argument'
  what():  ERROR: found null pointer in call to Variable<T>::MinMax

This is using BP4 with the following configuration (I have combined SST and BP4 parameters for reuse:

    <io name="SimulationOutput">
        <engine type="BP4">
            <!-- SST engine parameters -->
            <parameter key="RendezvousReaderCount" value="1"/>
            <parameter key="QueueLimit" value="1"/>
            <parameter key="QueueFullPolicy" value="Block"/>
            <!-- BP4/SST engine parameters -->
            <parameter key="OpenTimeoutSecs" value="900"/>
            <parameter key="BeginStepPollingFrequencySecs" value="1" />
            <parameter key="SubStreams" value="512"/>
        </engine>
    </io>

This occurs on the first timestep of the reader. The writer runs to completion. For reference, here is some of the pdf_calc code that precedes the MinMax call: https://github.com/pnorbert/adiosvm/blob/75bf69b13638f7c67981f43d269d2a19e269da20/Tutorial/gray-scott/analysis/pdf_calc.cpp#L182-L216