Possible bug when coarsening Indexdata
In file IndexData.C, routines getDataStreamSize, packStream are calculating stream size or packing data on the intersection of overlap destination boxes with box of the patch data (line. 362, 402, 417).
However, when setting a coarsen schedule with non zero gcw_to_coarsen, it will involve the data living on the coarse-fine boundaries naturally, which are part of ghost cells of the temp level used in coarsen schedule. If this is the case, when transferring data from temp level to coarse level when doing coarsening, the rountes getDataStreamSize and packStream will exclude data living in ghost cells and result in the failure of updating data within gcw_to_coarsen.
Change the call of getBox() to getGhostBox() on those lines might fix the problem (at least in my test code), but I'm not sure whether this is the proper way.