assume you have for example a general Numpy array arr of shape (a,b,c,d,e,f) and a corresponding boolean array idx of shape (a,b,c,d).
Then in numpy arr[idx].shape == (N, e, f), where N is the number of True elements. However, when arr is a dask array, this will fail:
*** IndexError: Boolean array with size a*b*c*d is not long enough for axis 0 with size a
It works fine if only indexing the first axis with a boolean array of shape (a,). It works fine if indexing all axes, with a boolean array of shape == arr.shape (although you get nan shape & chunksize, see also here). However, it does not work for a partial mask.
Is this expected behaviour?