@@ -577,33 +577,33 @@ def reset_coords(self, names=None, drop=False, inplace=False):
577
577
return dataset
578
578
579
579
def __dask_graph__ (self ):
580
- return self ._variable .__dask_graph__ ()
580
+ return self ._to_temp_dataset () .__dask_graph__ ()
581
581
582
582
def __dask_keys__ (self ):
583
- return self ._variable .__dask_keys__ ()
583
+ return self ._to_temp_dataset () .__dask_keys__ ()
584
584
585
585
@property
586
586
def __dask_optimize__ (self ):
587
- return self ._variable .__dask_optimize__
587
+ return self ._to_temp_dataset () .__dask_optimize__
588
588
589
589
@property
590
590
def __dask_scheduler__ (self ):
591
- return self ._variable . __dask_scheduler__
591
+ return self ._to_temp_dataset (). __dask_optimize__
592
592
593
593
def __dask_postcompute__ (self ):
594
- variable_func , variable_args = self ._variable .__dask_postcompute__ ()
595
- return self ._dask_finalize , (variable_func , variable_args ,
596
- self ._coords , self ._name )
594
+ func , args = self ._to_temp_dataset ().__dask_postcompute__ ()
595
+ return self ._dask_finalize , (func , args , self .name )
597
596
598
597
def __dask_postpersist__ (self ):
599
- variable_func , variable_args = self ._variable .__dask_postpersist__ ()
600
- return self ._dask_finalize , (variable_func , variable_args ,
601
- self ._coords , self ._name )
598
+ func , args = self ._to_temp_dataset ().__dask_postpersist__ ()
599
+ return self ._dask_finalize , (func , args , self .name )
602
600
603
601
@staticmethod
604
- def _dask_finalize (results , variable_func , variable_args , coords , name ):
605
- var = variable_func (results , * variable_args )
606
- return DataArray (var , coords = coords , name = name )
602
+ def _dask_finalize (results , func , args , name ):
603
+ ds = func (results , * args )
604
+ variable = ds ._variables .pop (_THIS_ARRAY )
605
+ coords = ds ._variables
606
+ return DataArray (variable , coords , name = name , fastpath = True )
607
607
608
608
def load (self , ** kwargs ):
609
609
"""Manually trigger loading of this array's data from disk or a
0 commit comments