Skip to content

fix: use direct HTTP forwarding to improve /status endpoint performance#886

Merged
suchapalaver merged 1 commit intomainfrom
540-status-endpoint-slow-responding
Jan 6, 2026
Merged

fix: use direct HTTP forwarding to improve /status endpoint performance#886
suchapalaver merged 1 commit intomainfrom
540-status-endpoint-slow-responding

Conversation

@suchapalaver
Copy link
Copy Markdown
Collaborator

Replace complex GraphQL abstraction layers with direct HTTP forwarding to graph-node. This eliminates redundant parsing and serialization that caused ~15s response times vs ~0.4s for direct graph-node queries.

Changes:

  • Remove async_graphql_axum::GraphQLRequest extractor
  • Remove WrappedGraphQLRequest conversion wrapper
  • Remove thegraph_graphql_http::send_graphql abstraction
  • Use raw Bytes and direct .body().send() pattern
  • Add debug timing instrumentation for troubleshooting

Fixes #540


Signed off by Joseph Livesey joseph@semiotic.ai

@suchapalaver suchapalaver force-pushed the 540-status-endpoint-slow-responding branch from f500bf3 to d0fe0c1 Compare December 4, 2025 22:07
@coveralls
Copy link
Copy Markdown

coveralls commented Dec 4, 2025

Pull Request Test Coverage Report for Build 20756621643

Details

  • 193 of 197 (97.97%) changed or added relevant lines in 1 file are covered.
  • No unchanged relevant lines lost coverage.
  • Overall coverage increased (+3.5%) to 67.59%

Changes Missing Coverage Covered Lines Changed/Added Lines %
crates/service/src/routes/status.rs 193 197 97.97%
Totals Coverage Status
Change from base Build 20492641303: 3.5%
Covered Lines: 9931
Relevant Lines: 14693

💛 - Coveralls

@suchapalaver suchapalaver force-pushed the 540-status-endpoint-slow-responding branch from d0fe0c1 to f827251 Compare December 22, 2025 20:10
@suchapalaver suchapalaver marked this pull request as ready for review December 22, 2025 20:46
@suchapalaver suchapalaver requested a review from neithanmo January 6, 2026 15:33
   Replace complex GraphQL abstraction layers with direct HTTP forwarding
   to graph-node. This eliminates redundant parsing and serialization that
   caused ~15s response times vs ~0.4s for direct graph-node queries.

   Changes:
   - Remove async_graphql_axum::GraphQLRequest extractor
   - Remove WrappedGraphQLRequest conversion wrapper
   - Remove thegraph_graphql_http::send_graphql abstraction
   - Use raw Bytes and direct .body().send() pattern
   - Add debug timing instrumentation for troubleshooting

   Fixes #540
@suchapalaver suchapalaver force-pushed the 540-status-endpoint-slow-responding branch from f827251 to 2b4e28c Compare January 6, 2026 17:35
Copy link
Copy Markdown
Collaborator

@neithanmo neithanmo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Amazing improvement!

@suchapalaver suchapalaver merged commit 1e50825 into main Jan 6, 2026
12 checks passed
@suchapalaver suchapalaver deleted the 540-status-endpoint-slow-responding branch January 6, 2026 18:44
@github-actions github-actions bot mentioned this pull request Jan 6, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Status endpoint slow responding

3 participants