graphprotocol / graphprotocol/graph-node
[Bug] graphman fails to copy a SG in failed state
Nobody has claimed this yet.
- Dominant language
- Rust
- Stars
- 3.2k
- Forks
- 1.1k
- Avg merge
- 4d 1h
- Merged PRs (30d)
- 1
Description
Bug report
When I try to copy a SG which is in failed state in the original shard I get this error
graphman copy create Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso shard_l index_node_near_0
Defaulted container "graph-node" out of: graph-node, sysctl (init)
Error: store error: can not copy deployment Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso[687669] because it has failed
command terminated with exit code 1
After this If I try to perform a graphman info I get this error which prevents me to use it further with the Hash
graphman info -s Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso
Defaulted container "graph-node" out of: graph-node, sysctl (init)
thread 'main' panicked at node/src/manager/display.rs:17:13:
there are 14 headers but the row has 8 entries: ["apolopayapp/mainnet", "current", "Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso", "sgd696771", "shard_l", "false", "near-mainnet", "---"]
stack backtrace:
0: rust_begin_unwind
1: core::panicking::panic_fmt
2: graph_node::manager::display::List::append
3: graph_node::manager::commands::info::run
4: graphman::main::{{closure}}
5: graphman::main
note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.
command terminated with exit code 101
But I see it created the copy in the new shard
Defaulted container "graph-node" out of: graph-node, sysctl (init)
name | apolopayapp/mainnet
status | current
id | Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso
namespace | sgd696771
shard | shard_l
active | false
chain | near-mainnet
node_id | ---
----------+-------------------------------------------------------------------
name | iochando/apolopaytesting
status | pending
id | Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso
namespace | sgd696771
shard | shard_l
active | false
chain | near-mainnet
node_id | ---
It shouldn't allow to copy it throwing a warning and do not create the copy in failed state in the new shard. This new failed copy eventually get removed but until then I can't use the graphman accordingly
Relevant log output
No response
IPFS hash
Qmck8CbUSdxStMDT4VzHUXdJyGjbSYcJ3bv9EroxjXbYso
Subgraph name or link to explorer
No response
Some information to help us out
- Tick this box if this bug is caused by a regression found in the latest release.
- Tick this box if this bug is specific to the hosted service.
- I have searched the issue tracker to make sure this issue is not a duplicate.
OS information
macOS
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the failed-state flow with graphman copy create, then inspect the graphman copy and info paths, especially node/src/manager/display.rs and List::append. Verify that copying a failed deployment is rejected without creating a failed copy, and that graphman info no longer panics when displaying the affected deployment.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- rust
- Domain
- cli
- Issue type
- Bug
- Difficulty
- 3/5
- Estimated time
- 1-2 days
- Activity status
- Stale
- Clarity
- Mostly clear
- Newbie friendliness
- 38/100