graphprotocol / graphprotocol/graph-node
[Bug] Deterministic subgraph failures being reported as non-deterministic
Abierto
Nadie ha tomado este issue todavía.
bug
Stale
- Lenguaje dominante
- Rust
- Estrellas
- 3.2k
- Forks
- 1.1k
- Merge medio
- 4 d 1 h
- PR fusionados (30 d)
- 1
Descripción
Bug report
These are all examples of deterministic failures that are being incorrectly categorised as non-deterministic failures
Relevant log output
[
{
"ipfsHash": "QmWFi6uciaQPQmo1xRrahNwfiWLGeN9GTDJMuCfV8iVXSe",
"fatalError": {
"message": "failed to process trigger: Failed to process substreams block: Entity PoolDayData[0xada15f0f68f9e7d4230c97d942616f1db3f2a9c4-19889]: missing value for non-nullable field `date`",
"block": {
"number": "20100395",
"hash": "0x3661643266396331656531393132363362313066313566353236313930396464",
"__typename": "Block"
},
"handler": null,
"deterministic": false,
"__typename": "SubgraphError"
}
},
{
"ipfsHash": "QmaqjayWnJntBFg5fr4TbvPHhVDG3xbbvuA4FCDaUuxz8X",
"fatalError": "failed to process trigger: block #21586871 (0x158d…6bda), transaction b92f1e508502add12c1c3659e1c300cba3257ba467d21c3b7759a02c8ae5dd26: module instantiation failed: attempted to divide BigDecimal `86400` by zero\twasm backtrace:\t 0: 0x4b99 - <unknown>!~lib/@graphprotocol/graph-ts/common/numbers/BigDecimal#div\t 1: 0x522d - <unknown>!start:src/modules/Rewards\t 2: 0xef4a - <unknown>!~start\t",
"network": "gnosis",
"chainHeadBlock": "34909325",
"latestBlock": "21586870"
},
{
"ipfsHash": "QmVtNnXse2zWVRsfNGW8SxvipS9SVwC7g9qyQMHvUQbqAP",
"fatalError": "internal constraint violated: duplicate entity FeeRecord[0xf6dc7014f8ae2e55f87d886206d2219e59a0d47f_0xae78736cd615f374d3085123a210448e74fc6393] in result set, block = 17694794",
"network": "mainnet",
"chainHeadBlock": "20282368",
"latestBlock": "17694795"
},
{
"ipfsHash": "QmWFi6uciaQPQmo1xRrahNwfiWLGeN9GTDJMuCfV8iVXSe",
"fatalError": "failed to process trigger: Failed to process substreams block: Entity PositionSnapshot[736502#20100135]: missing value for non-nullable field `owner`",
"network": "mainnet",
"chainHeadBlock": "20282368",
"latestBlock": "20100134"
},
{
"ipfsHash": "QmPfSbPF6PcT2ETAXMoFCPcz2CaKysRBXcUecHPySK66rk",
"fatalError": "failed to process trigger: block #198186126 (0xd01a…a2cd), transaction ba2236724306f75a1228af269a4ef5b6c21e2756f17a1fffdbb2f66a58e1883a: Subgraph panicked with message: called `Result::unwrap()` on an `Err` value: MemoryAccessError { _private: () }",
"network": "arbitrum-one",
"chainHeadBlock": "231038876",
"latestBlock": "198186125"
}
]
IPFS hash
No response
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
None
Guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Línea de trabajo
El informe no menciona archivos, pruebas ni puntos de entrada. Empieza por localizar la lógica que asigna el campo determinista para los fallos del subgrafo y, después, reprodúcela con los errores indicados de campo ausente, división por cero, entidad duplicada y WASM; el trabajo estará terminado cuando los fallos deterministas dejen de notificarse como no deterministas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- rust
- Área
- backend-api-design, blockchain
- Tipo de issue
- Error
- Dificultad
- 4/5
- Tiempo estimado
- 3-5 días
- Estado de actividad
- Estancado
- Claridad
- Necesita aclaración
- Aptitud para principiantes
- 35/100