[thredds] Aggregation bug

Dear list,

I seem to have encountered some aggregation bug on THREDDS 4.2. When plotting a time step from an aggregated virtual dataset via OpenDAP, the result is always different depending on the number of dataset files being aggregated. Attached are images for illustration:

CORRECT17Jul930.gif is the expected output. I've plotted this using Ferret by directly using the dataset. AGG17Jul930.gif is the result of an aggregated dataset containing 92 NetCDF files. One model day (e.g. 16 July 00:00 to 17 July 00:00) with 30 mins interval is divided into 4 NetCDF files. Hence, the 92 NetCDF files is equivalent to 23 model days. OTHERAGG17Jul930.gif is the result of an aggregated dataset containing 52 NetCDF files or 13 model days. As observed, all 3 results are completely different. The result always differs depending on the number of NetCDF files being aggregated. Below is my thredds catalog configuration for aggregation.

<catalog xmlns="http://www.unidata.ucar.edu/namespaces/thredds/InvCatalog/v1.0";
         xmlns:xlink="http://www.w3.org/1999/xlink";
         name="Agg data" version="1.0.2">
  <service name="ncdods" serviceType="OPENDAP" base="/thredds/dodsC/" />
  <dataset name="Agg Test" ID="agg_test" urlPath="las/agg_test.nc">
    <serviceName>ncdods</serviceName>
    <netcdf xmlns="http://www.unidata.ucar.edu/namespaces/netcdf/ncml-2.2";>
      <variable name="time" shape="time" type="double">
        <attribute name="long_name" value="coordinate variables of time" />
        <values start="86400" increment="1800" />
      </variable>
<aggregation dimName="time" type="joinExisting" timeUnitsChange="true">
        <variableAgg name="time" />
        <scan location="/data/aggregation" suffix=".nc" />
      </aggregation>
    </netcdf>
  </dataset>
</catalog>

I would also like to mention that in our NetCDF output, time step 00:00 is repeated for each new model day. (e.g. 16July.nc will have timesteps 16-July 00:00:00 to 17-July 00:00:00 and 17July.nc will start at 17-Jul 00:00:00, which is the timestep that is repeated from the previous dataset). Lastly for each new model day, the time units is always changing, which is why I've set imeUnitsChange="true".

Hope the information mentioned can help shed some light as to why thredds is reacting in such way. Any advice or help is greatly appreciated.
--
Regards,
Anton

Attachment: AGG17Jul930.gif
Description: GIF image

Attachment: CORRECT17Jul930.gif
Description: GIF image

Attachment: OTHERAGG17Jul930.gif
Description: GIF image