CAVEconnectome / CAVEclient

This is the python client for accessing REST APIs within the Connectome Annotation Versioning Engine.
https://caveconnectome.github.io/CAVEclient/
MIT License
19 stars 12 forks source link

Error with `chunkedgraph.is_valid_nodes()` #120

Closed bdpedigo closed 8 months ago

bdpedigo commented 9 months ago

Minimal working example

import caveclient as cc

client = cc.CAVEclient("minnie65_phase3_v1")

root_id = 864691135731235769

change_log = client.chunkedgraph.get_change_log(root_id)

details = client.chunkedgraph.get_operation_details(change_log["operations_ids"])
detail = next(iter(details.items()))[1]

# trying to check if these nodes referenced in "added_edges" are valid
pre_id, post_id = detail["added_edges"][0]
client.chunkedgraph.is_valid_nodes([pre_id, post_id])

Output

Traceback (most recent call last):
  File "/Users/bpedigo/aibs-code/cave-explorer/cave-explorer/experiments/is_valid_mwe.py", line 17, in <module>
    client.chunkedgraph.is_valid_nodes([pre_id, post_id])
  File "/Users/bpedigo/aibs-code/cave-explorer/cave-explorer/.venv/lib/python3.11/site-packages/caveclient/chunkedgraph.py", line 960, in is_valid_nodes
    valid_ids = np.array(r["valid_roots"], np.uint64)
                         ~^^^^^^^^^^^^^^^
TypeError: 'NoneType' object is not subscriptable

In other words, r is None

Similarly, if I just do

client.chunkedgraph.is_valid_nodes([1234])

I get the same error.

Even

client.chunkedgraph.is_valid_nodes([root_id])

for a root_id I know exists (above) also gives this error.