Description:
Currently, the nixpkgs-graph-explorer experiences transient issues with Gremlin Server (i.e. high load), resulting in failed write operations for certain packages. These failures lead to missing data and hinder the ability to present complete and precise information in the graph explorer.
To mitigate this issue, it is suggested to add retry logic and improve logging for write operations in the explorer.api.ingest module. By incorporating these changes, we can ensure that failed cases are properly recorded and potentially retried.
Proposed Solution:
Add retry logic to the write operations in the explorer.api.ingest module to handle transient failures caused by high load on Gremlin Server.
Enhance logging functionality to provide more detailed information about failed cases, enabling efficient troubleshooting and potential retries.
As a quick initial step, we can leverage the existing retry library that is already used in our custom Gremlin transport. By applying a few decorators to the functions responsible for writing edges and vertices, we can introduce retry behavior for these operations.
Description: Currently, the nixpkgs-graph-explorer experiences transient issues with Gremlin Server (i.e. high load), resulting in failed write operations for certain packages. These failures lead to missing data and hinder the ability to present complete and precise information in the graph explorer.
To mitigate this issue, it is suggested to add retry logic and improve logging for write operations in the explorer.api.ingest module. By incorporating these changes, we can ensure that failed cases are properly recorded and potentially retried.
Proposed Solution:
explorer.api.ingest
module to handle transient failures caused by high load on Gremlin Server.As a quick initial step, we can leverage the existing retry library that is already used in our custom Gremlin transport. By applying a few decorators to the functions responsible for writing edges and vertices, we can introduce retry behavior for these operations.