<div dir="ltr">NCL team,<div><br></div><div>Under some conditions, adding a _FillValue attribute to an existing Netcdf-4 file erases previous data. I find this behavior with both NCL 6.3.0 and 6.4.0 on Mac OS 10.11 (El Capitan). I get the same behavior with both netcdf4-classic and full netcdf4 formats.</div><div><br></div><div><div>mac56:~/ncl/bugs/fillvalue1 2> ncdump -s <a href="http://test3.nc" target="_blank">test3.nc</a> </div><div>netcdf test3 {</div><div>dimensions:</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>dim = 10 ;</div><div>variables:</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>int var(dim) ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>var:_Storage = "contiguous" ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>var:_Endianness = "little" ;</div><div><br></div><div>// global attributes:</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_NCProperties = "version=1|netcdflibversion=4.<wbr>4.1|hdf5libversion=1.8.17" ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_SuperblockVersion = 0 ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_IsNetcdf4 = 1 ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_Format = "netCDF-4 classic model" ;</div><div>data:</div><div><br></div><div> var = 11, 22, 33, 44, 55, _, _, _, _, _ ;</div><div>}</div><div><br></div><div>mac56:~/ncl/bugs/fillvalue1 3> ncl</div><div> Copyright (C) 1995-2017 - All Rights Reserved</div><div> University Corporation for Atmospheric Research</div><div> NCAR Command Language Version 6.4.0</div><div> The use of this software is governed by a License Agreement.</div><div> See <a href="http://www.ncl.ucar.edu/" target="_blank">http://www.ncl.ucar.edu/</a> for more details.</div><div>ncl 0> f=addfile("<a href="http://test3.nc" target="_blank">test3.nc</a>","w")</div><div>ncl 1> f->var@_FillValue = 99</div><div>ncl 2> exit</div><div><br></div><div>mac56:~/ncl/bugs/fillvalue1 4> ncdump -s <a href="http://test3.nc" target="_blank">test3.nc</a></div><div>netcdf test3 {</div><div>dimensions:</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>dim = 10 ;</div><div>variables:</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>int var(dim) ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>var:_FillValue = 99 ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>var:_Storage = "contiguous" ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>var:_Endianness = "little" ;</div><div><br></div><div>// global attributes:</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_NCProperties = "version=1|netcdflibversion=4.<wbr>4.1|hdf5libversion=1.8.17" ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_SuperblockVersion = 0 ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_IsNetcdf4 = 1 ;</div><div><span class="m_7973063563983683359m_6761569823105552128gmail-Apple-tab-span" style="white-space:pre-wrap"> </span>:_Format = "netCDF-4 classic model" ;</div><div>data:</div><div><br></div><div> var = _, _, _, _, _, _, _, _, _, _ ;</div><div>}</div></div><div><br></div><div>In my opinion, the correct response for netcdf-4 formats should be an error, something like "Can not change _FillValue after data is written in netcdf-4", and the file is unchanged. In any case, previous data should not be silently erased. If you agree, please fix this for the next release. Thanks.</div><div><br></div><div>--Dave</div></div>