html_url,issue_url,id,node_id,user,created_at,updated_at,author_association,body,reactions,performed_via_github_app,issue
https://github.com/pydata/xarray/pull/1811#issuecomment-389296294,https://api.github.com/repos/pydata/xarray/issues/1811,389296294,MDEyOklzc3VlQ29tbWVudDM4OTI5NjI5NA==,1217238,2018-05-15T20:06:58Z,2018-05-15T20:06:58Z,MEMBER,(assuming tests pass),"{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,286542795
https://github.com/pydata/xarray/pull/1811#issuecomment-389296253,https://api.github.com/repos/pydata/xarray/issues/1811,389296253,MDEyOklzc3VlQ29tbWVudDM4OTI5NjI1Mw==,1217238,2018-05-15T20:06:49Z,2018-05-15T20:06:49Z,MEMBER,"> Yes, just tried again. I'm open to ideas but would also like to move this issue along first, if possible.
Sounds good, let's go ahead and merge this!","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,286542795
https://github.com/pydata/xarray/pull/1811#issuecomment-373092099,https://api.github.com/repos/pydata/xarray/issues/1811,373092099,MDEyOklzc3VlQ29tbWVudDM3MzA5MjA5OQ==,1217238,2018-03-14T16:45:25Z,2018-03-14T16:45:25Z,MEMBER,"To elaborate a little bit on my last comment (which I submitted very quickly when my bus was arriving), the way to make dependent tasks with dask.delayed is to add dummy function arguments, e.g.,
```python
def finalize_store(store, write):
del write # unused
store.sync()
store.close()
write = dask.array.store(..., compute=False)
write_and_close = dask.delayed(finalize_store)(store, write)
write_and_close.compute() # writes and syncs
```
Potentially some of this logic could get moved into `ArrayWriter.sync()`","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,286542795
https://github.com/pydata/xarray/pull/1811#issuecomment-373072825,https://api.github.com/repos/pydata/xarray/issues/1811,373072825,MDEyOklzc3VlQ29tbWVudDM3MzA3MjgyNQ==,1217238,2018-03-14T15:54:43Z,2018-03-14T15:54:43Z,MEMBER,"One potential issue here is the lack of clean-up (which may be unnecessary if `autoclose=True`). You want to construct a single dask graph with a structure like the following:
- Tasks for writing all array data (i.e., from `ArrayWriter`).
- Tasks for calling sync() and close() on each datastore object. These should depend on the appropriate writing tasks.
- A single tasks that depends on writing all datastores. This is what the delayed object returned by `save_mfdataset` should return.","{""total_count"": 0, ""+1"": 0, ""-1"": 0, ""laugh"": 0, ""hooray"": 0, ""confused"": 0, ""heart"": 0, ""rocket"": 0, ""eyes"": 0}",,286542795