home / github

Menu
  • Search all tables
  • GraphQL API

issue_comments

Table actions
  • GraphQL API for issue_comments

27 rows where author_association = "CONTRIBUTOR" and issue = 402908148 sorted by updated_at descending

✎ View and edit SQL

This data as json, CSV (advanced)

Suggested facets: reactions, created_at (date), updated_at (date)

user 2

  • davidbrochart 16
  • jendrikjoe 11

issue 1

  • Appending to zarr store · 27 ✖

author_association 1

  • CONTRIBUTOR · 27 ✖
id html_url issue_url node_id user created_at updated_at ▲ author_association body reactions performed_via_github_app issue
504184558 https://github.com/pydata/xarray/pull/2706#issuecomment-504184558 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDUwNDE4NDU1OA== davidbrochart 4711805 2019-06-20T21:11:57Z 2019-06-20T21:11:57Z CONTRIBUTOR

You're right @shikharsg, the chunk_dim argument can be removed. I was not very happy with the complexity it brought as well.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
502827736 https://github.com/pydata/xarray/pull/2706#issuecomment-502827736 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDUwMjgyNzczNg== jendrikjoe 9658781 2019-06-17T19:56:23Z 2019-06-17T19:56:23Z CONTRIBUTOR

I build a filter that is raising a value error as soon as any variable has a dtype different from any subclass of np.number or np.string_. I as well build test for that and added a function to manually convert dynamic sized string arrays to fixed sized ones.

I as well wrote a test for @shikharsg issue and can reproduce it. The test is currently commented to not fail the pipeline as I wanted to discuss if this is a blocking issue or if we should merge it and raise a new issue for it. It seems to be originating from the fact that we moved away from using writer.add and instead are actually calling the zarr functions directly. There should be a way to change this back to do it lazily, but that will probably take time. What do you think?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
502754545 https://github.com/pydata/xarray/pull/2706#issuecomment-502754545 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDUwMjc1NDU0NQ== jendrikjoe 9658781 2019-06-17T16:24:46Z 2019-06-17T16:24:46Z CONTRIBUTOR

@jendrikjoe - thanks for digging in and finding this important issue!

This PR has been hanging around for a long time. (A lot of that is on me!) It would be good to get something merged soon. Here's what I propose.

* Identify which datatypes can easily be appended now (e.g. floats, etc.) and which cannot (variable length strings)

* Raise an error if append is called on the incompatible datatypes

* Move forward with this PR, which is otherwise very nearly ready

* Open a new issue to keep track of the outstanding incompatible types, which require upstream resolution in zarr

How does that sound to everyone?

This sounds like a plan. I will try to work on getting this ready tonight and tmrw. Let us see how far I can get.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
502481584 https://github.com/pydata/xarray/pull/2706#issuecomment-502481584 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDUwMjQ4MTU4NA== jendrikjoe 9658781 2019-06-16T20:05:04Z 2019-06-16T20:23:54Z CONTRIBUTOR

Hey there everyone, sorry for not working on this for so long from my side. I just picked it up again and realised that the way the encoding works, all the datatypes and the maximum string lengths in the first xarray have to be representative for all others. Otherwise the following cuts away every char after the second:

ds0 = xr.Dataset({'temperature': (['time'],  ['ab', 'cd', 'ef'])}, coords={'time': [0, 1, 2]})
ds1 = xr.Dataset({'temperature': (['time'],  ['abc', 'def', 'ghijk'])}, coords={'time': [0, 1, 2]})
ds0.to_zarr('temp')
ds1.to_zarr('temp', mode='a', append_dim='time')

It is solvable when explicitly setting the type before writing:

ds0 = xr.Dataset({'temperature': (['time'],  ['ab', 'cd', 'ef'])}, coords={'time': [0, 1, 2]})
ds0['temperature'] = ds0.temperature.astype(np.dtype('S5'))
ds1 = xr.Dataset({'temperature': (['time'],  ['abc', 'def', 'ghijk'])}, coords={'time': [0, 1, 2]})
ds0.to_zarr('temp')
ds1.to_zarr('temp', mode='a', append_dim='time')

It becomes however worse when using non-ascii characters, as they get encoded in zarr.py l:218, but with the next chunk that is coming in the check in conventions.py l:86 fails. So I think we actually have to resolve the the TODO in zarr.py l:215 before this is able to be merged. Otherwise, the following leads to multiple issues:

ds0 = xr.Dataset({'temperature': (['time'],  ['ab', 'cd', 'ef'])}, coords={'time': [0, 1, 2]})
ds1 = xr.Dataset({'temperature': (['time'],  ['üý', 'ãä', 'õö'])}, coords={'time': [0, 1, 2]})
ds0.to_zarr('temp')
ds1.to_zarr('temp', mode='a', append_dim='time')
xr.open_zarr('temp').temperature.values

The only way to work around this issue is to explicitly encode the data beforehand to utf-8:

from xarray.coding.variables import safe_setitem, unpack_for_encoding
from xarray.coding.strings import encode_string_array
from xarray.core.variable import Variable

def encode_utf8(var, string_max_length):
    dims, data, attrs, encoding = unpack_for_encoding(var)
    safe_setitem(attrs, '_Encoding', 'utf-8')
    data = encode_string_array(data, 'utf-8')
    data = data.astype(np.dtype(f"S{string_max_length*2}"))
    return Variable(dims, data, attrs, encoding)

ds0 = xr.Dataset({'temperature': (['time'],  ['ab', 'cd', 'ef'])}, coords={'time': [0, 1, 2]})
ds0['temperature'] = encode_utf8(ds0.temperature, 2)
ds1 = xr.Dataset({'temperature': (['time'],  ['üý', 'ãä', 'õö'])}, coords={'time': [0, 1, 2]})
ds1['temperature'] = encode_utf8(ds1.temperature, 2)
ds0.to_zarr('temp')
ds1.to_zarr('temp', mode='a', append_dim='time')
xr.open_zarr('temp').temperature.values

Even though this is doable if it is known in advance, we should definitely mention this in the documentation or fix this by fixing the encoding itself. What do you think?

Cheers,

Jendrik

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
498205860 https://github.com/pydata/xarray/pull/2706#issuecomment-498205860 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ5ODIwNTg2MA== jendrikjoe 9658781 2019-06-03T10:40:28Z 2019-06-03T10:40:28Z CONTRIBUTOR

Gave you the permissions @shikharsg

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
498199759 https://github.com/pydata/xarray/pull/2706#issuecomment-498199759 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ5ODE5OTc1OQ== davidbrochart 4711805 2019-06-03T10:19:15Z 2019-06-03T10:19:15Z CONTRIBUTOR

It would be great if you could fix it. @jendrikjoe can give you the permission to push to the branch in his fork.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
498166896 https://github.com/pydata/xarray/pull/2706#issuecomment-498166896 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ5ODE2Njg5Ng== davidbrochart 4711805 2019-06-03T08:41:01Z 2019-06-03T08:41:01Z CONTRIBUTOR

Thanks @shikharsg for looking into that. This PR and master have diverged quite a bit, I will need to merge the changes, I will let you know.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
494340006 https://github.com/pydata/xarray/pull/2706#issuecomment-494340006 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ5NDM0MDAwNg== davidbrochart 4711805 2019-05-21T10:46:20Z 2019-05-21T10:46:20Z CONTRIBUTOR

No problem @rabernat, and thanks a lot for your time in reviewing this PR.

I added a test for chunk_dim. Please let me know if this is clearer, and if I should explain further in the docs.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
485340727 https://github.com/pydata/xarray/pull/2706#issuecomment-485340727 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ4NTM0MDcyNw== davidbrochart 4711805 2019-04-22T06:38:04Z 2019-04-22T06:38:04Z CONTRIBUTOR

I added a chunk_dim parameter which allows to rechunk the appended coordinate. I think it is ready for a final review now.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
484551274 https://github.com/pydata/xarray/pull/2706#issuecomment-484551274 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ4NDU1MTI3NA== davidbrochart 4711805 2019-04-18T15:14:24Z 2019-04-18T15:14:24Z CONTRIBUTOR

I don't think it's ready yet. I think I should address the chunking issue of the appended dimension, as explained in https://medium.com/pangeo/continuously-extending-zarr-datasets-c54fbad3967d. For instance if we append along a time dimension, the time coordinate (which is a 1-D array) will have very small chunks, instead of maybe only one.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
479932785 https://github.com/pydata/xarray/pull/2706#issuecomment-479932785 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3OTkzMjc4NQ== davidbrochart 4711805 2019-04-04T14:57:45Z 2019-04-04T14:57:45Z CONTRIBUTOR

@rabernat you're right, I took your suggestion into account in my last commit. I also rewrote the test.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
479802142 https://github.com/pydata/xarray/pull/2706#issuecomment-479802142 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3OTgwMjE0Mg== jendrikjoe 9658781 2019-04-04T08:28:56Z 2019-04-04T08:28:56Z CONTRIBUTOR

Nice :+1:

On Apr 4, 2019 21:24, David Brochart notifications@github.com wrote:

Thanks @jendrikjoehttps://github.com/jendrikjoe, I just pushed to your fork: to make sure that the encoding of the appended variables is compatible with the target store, we explicitly put the target store encodings in the appended variable.

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/pydata/xarray/pull/2706#issuecomment-479800472, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJNhnai3TAdnmcRLsMnUXXRsMx7jcf3Vks5vdbakgaJpZM4aRxJT.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
479800472 https://github.com/pydata/xarray/pull/2706#issuecomment-479800472 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3OTgwMDQ3Mg== davidbrochart 4711805 2019-04-04T08:24:01Z 2019-04-04T08:24:01Z CONTRIBUTOR

Thanks @jendrikjoe, I just pushed to your fork: to make sure that the encoding of the appended variables is compatible with the target store, we explicitly put the target store encodings in the appended variable.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
479798342 https://github.com/pydata/xarray/pull/2706#issuecomment-479798342 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3OTc5ODM0Mg== jendrikjoe 9658781 2019-04-04T08:17:43Z 2019-04-04T08:17:43Z CONTRIBUTOR

I added you to the fork :) But feel free to do whatever is easiest for you :)

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
479788744 https://github.com/pydata/xarray/pull/2706#issuecomment-479788744 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3OTc4ODc0NA== davidbrochart 4711805 2019-04-04T07:46:52Z 2019-04-04T07:46:52Z CONTRIBUTOR

Or should I open a new PR?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
479480023 https://github.com/pydata/xarray/pull/2706#issuecomment-479480023 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3OTQ4MDAyMw== davidbrochart 4711805 2019-04-03T13:04:24Z 2019-04-03T13:04:24Z CONTRIBUTOR

@jendrikjoe I think you need to give me the permission to push to the branch in your fork.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
478399527 https://github.com/pydata/xarray/pull/2706#issuecomment-478399527 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3ODM5OTUyNw== jendrikjoe 9658781 2019-04-01T00:19:11Z 2019-04-01T00:19:11Z CONTRIBUTOR

Sure everyone feel welcome to join in! Sorry for the long silence. Kind of a busy time right now 😉

On Apr 1, 2019 08:47, Ryan Abernathey notifications@github.com wrote:

@davidbrocharthttps://github.com/davidbrochart I would personally be happy to see anyone work on this. I'm sure @jendrikjoehttps://github.com/jendrikjoe would not mind if we make it a team effort!

— You are receiving this because you were mentioned. Reply to this email directly, view it on GitHubhttps://github.com/pydata/xarray/pull/2706#issuecomment-478374296, or mute the threadhttps://github.com/notifications/unsubscribe-auth/AJNhnVvW1PlIIRFRQ-nW6QM7gd5JMAi5ks5vcRDogaJpZM4aRxJT.

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
478365516 https://github.com/pydata/xarray/pull/2706#issuecomment-478365516 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3ODM2NTUxNg== davidbrochart 4711805 2019-03-31T18:22:53Z 2019-03-31T18:22:53Z CONTRIBUTOR

May I try and take this work over?

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
475558223 https://github.com/pydata/xarray/pull/2706#issuecomment-475558223 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ3NTU1ODIyMw== davidbrochart 4711805 2019-03-22T09:53:43Z 2019-03-22T09:53:43Z CONTRIBUTOR

Hi @jendrikjoe, do you plan to work on this PR again in the future? I think it would be a great contribution to xarray.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
459667067 https://github.com/pydata/xarray/pull/2706#issuecomment-459667067 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1OTY2NzA2Nw== davidbrochart 4711805 2019-02-01T09:51:55Z 2019-02-01T09:51:55Z CONTRIBUTOR

When we use this feature e.g. to store data that is produced every day, we might start with a data set that has a small size on the time dimension, and thus the chunks will be chosen according to this initial shape. When we append to this data set, will the chunks be kept as in the initial zarr archive? If so, we might end up with a lot of small chunks on the time dimension, where ideally we would have chosen only one chunk.

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
458896024 https://github.com/pydata/xarray/pull/2706#issuecomment-458896024 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1ODg5NjAyNA== jendrikjoe 9658781 2019-01-30T10:37:56Z 2019-01-30T10:37:56Z CONTRIBUTOR

I will check as well how xarry stores times to check if we have to add the offset to the xarray first or if this can be resolved with a PR to zarr :)

{
    "total_count": 1,
    "+1": 1,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
458866421 https://github.com/pydata/xarray/pull/2706#issuecomment-458866421 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1ODg2NjQyMQ== davidbrochart 4711805 2019-01-30T09:05:53Z 2019-01-30T09:05:53Z CONTRIBUTOR

zarr stores the reference in the .zattrs file: { "_ARRAY_DIMENSIONS": [ "time" ], "calendar": "proleptic_gregorian", "units": "days since 2000-01-01 00:00:00" }

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
458736067 https://github.com/pydata/xarray/pull/2706#issuecomment-458736067 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1ODczNjA2Nw== jendrikjoe 9658781 2019-01-29T22:39:00Z 2019-01-29T22:39:00Z CONTRIBUTOR

Hey @davidbrochart, thanks for all your input and as well for the resarch on how zarr stores the data. I would actually claim that the calculation of the accurate relative time should be handled by the zarr append function. An exception would be of course if xarray is storing the data with deltas to a reference as well? Then I would try collecting the minimum and offsetting the input by this. @rabernat can you provide input on that?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
458730247 https://github.com/pydata/xarray/pull/2706#issuecomment-458730247 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1ODczMDI0Nw== davidbrochart 4711805 2019-01-29T22:19:07Z 2019-01-29T22:19:07Z CONTRIBUTOR

To make it work, time dimensions would have to be treated separately because zarr doesn't encode absolute time values but deltas relative to a reference (see https://github.com/davidbrochart/pangeo_upload/blob/master/py/trmm2pangeo.py#L108).

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
458720920 https://github.com/pydata/xarray/pull/2706#issuecomment-458720920 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1ODcyMDkyMA== davidbrochart 4711805 2019-01-29T21:50:14Z 2019-01-29T21:50:14Z CONTRIBUTOR

Hi @jendrikjoe,

Thanks for your PR, I am very interested in it because this is something I was hacking around (see here). In my particular case, I want to append along a time dimension, but it looks like your PR currently doesn't support it. In the following example ds2 should have a time dimension ranging from 2000-01-01 to 2000-01-06: ```python import xarray as xr import pandas as pd

ds0 = xr.Dataset({'temperature': (['time'], [50, 51, 52])}, coords={'time': pd.date_range('2000-01-01', periods=3)}) ds1 = xr.Dataset({'temperature': (['time'], [53, 54, 55])}, coords={'time': pd.date_range('2000-01-04', periods=3)})

ds0.to_zarr('temp') ds1.to_zarr('temp', mode='a', append_dim='time')

ds2 = xr.open_zarr('temp') But it's not the case: ds2.time <xarray.DataArray 'time' (time: 6)> array(['2000-01-01T00:00:00.000000000', '2000-01-02T00:00:00.000000000', '2000-01-03T00:00:00.000000000', '2000-01-01T00:00:00.000000000', '2000-01-02T00:00:00.000000000', '2000-01-03T00:00:00.000000000'], dtype='datetime64[ns]') Coordinates: * time (time) datetime64[ns] 2000-01-01 2000-01-02 ... 2000-01-03 ``` Maybe it's not intended to work with time dimensions yet?

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
458694955 https://github.com/pydata/xarray/pull/2706#issuecomment-458694955 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1ODY5NDk1NQ== jendrikjoe 9658781 2019-01-29T20:29:05Z 2019-01-29T20:31:59Z CONTRIBUTOR

You are definitely right, that there are no checks regarding the alignment. However, if another shape than the append_dim does not align zarr will raise an error. If the coordinate differs that could be definitely an issue. I did not think about that as I am dumping reshaped dask.dataframe partitions with the append mode. Therefore, I am anyway not allowed to have a name twice. Might be interesting for other users indeed. Similar point for the attributes. I could try figuring that out as well, but that might take a while. The place where the ValueError is raised should allow to add other variables, as those are added in the KeyError exception above :)

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148
457827734 https://github.com/pydata/xarray/pull/2706#issuecomment-457827734 https://api.github.com/repos/pydata/xarray/issues/2706 MDEyOklzc3VlQ29tbWVudDQ1NzgyNzczNA== jendrikjoe 9658781 2019-01-26T12:35:28Z 2019-01-26T12:35:28Z CONTRIBUTOR

Hi @rabernat,

happy to help! I love using xarray. I added the test for the append mode. One is making sure, that it behaves like the 'w' mode, if no data exist at the target path. The other one is testing what you described. The append_dim argument is actually the same as the dim argument for concat. Hope that helps clarifying my code :)

{
    "total_count": 0,
    "+1": 0,
    "-1": 0,
    "laugh": 0,
    "hooray": 0,
    "confused": 0,
    "heart": 0,
    "rocket": 0,
    "eyes": 0
}
  Appending to zarr store 402908148

Advanced export

JSON shape: default, array, newline-delimited, object

CSV options:

CREATE TABLE [issue_comments] (
   [html_url] TEXT,
   [issue_url] TEXT,
   [id] INTEGER PRIMARY KEY,
   [node_id] TEXT,
   [user] INTEGER REFERENCES [users]([id]),
   [created_at] TEXT,
   [updated_at] TEXT,
   [author_association] TEXT,
   [body] TEXT,
   [reactions] TEXT,
   [performed_via_github_app] TEXT,
   [issue] INTEGER REFERENCES [issues]([id])
);
CREATE INDEX [idx_issue_comments_issue]
    ON [issue_comments] ([issue]);
CREATE INDEX [idx_issue_comments_user]
    ON [issue_comments] ([user]);
Powered by Datasette · Queries took 55.912ms · About: xarray-datasette