Closed seankim658 closed 10 months ago
You're intuition here is correct (or at least, lines up with what I've thought leads to this error!).
To my mind, the right thing to do here is use React's state manager. It looks like state tracking is already happening all over the place in the code, so we can certainly implement it. I don't see any state tracking in the metanodes, however. Can you duplicate this issue on the nih-cfde/playbook-partnership
repository? That way Daniel can comment and we can see how he'd like to proceed (i.e., if he would like to implement state tracking himself, would like us to do it, or if we should just keep the code internal to our metanodes).
Opened the issue on the main repo here.
Per Daniel, this has already been resolved in a different PR that will be merged into the main branch in the near future.
Closing this issue.
This bug only occurs in graph mode, have not seen it in the prototype mode. It also isn't a breaking bug, things still work but it can be confusing to the end user that they have to wait a couple seconds longer.
Occurs with data metanodes that have somewhat long(er) backend process metanode logic. In the case of the protein set backend, multiple API calls have to be made to grab the final data. What I suspect is happening is that pressing on the card for the process metanode immediately calls the output data metanode and within the data metanode's
.view()
function the input parameterdata
is being read before the backend promise (API calls) are completed. Likely some state logic will need to be implemented in order to catch this error from being thrown to the frontend.