Datastore making - unidentified realm

Okay, took a lot longer than I was hoping - for some reason listing all the files in that directory in g40 is extremely slow, but I have an answer for why this is occurring.

The culprit is this line:

def append_attrs(self, var: str, attrs: dict) -> None:
    """
    Append attributes to the _VarInfo object, if the attribute has a
    'long_name' key.
    """
    if "long_name" not in attrs:
        return None
    ...

It turns out that we have a line in the Builders that ignores all variables without a long name attribute - and that in these files, there is no long name.

I’ve done a bit of git archaeology and it looks like this guard is totally vestigial, and just got stuck around due to the way this was refactored. I’m opening a PR to fix it now.

Unfortunately there are gonna be a couple of complications with rebuilding the datastore with the fixed guard due to the namespacing issues over at Build-esm-datastore failing in conda/analysis3-26.03 so rebuilding a working version of the datastore won’t be totally straightforward. I’ll do the same thing as there - rebuild the datastore and then change the permissions so you can copy it off somewhere - in the meantime.

I’ll update once I have a working datastore for you.

1 Like