GraphQL IRL: Pitfalls, Surprises and Successes
summary
Meta documents that adding enum values (not just deletions) repeatedly breaks clients because autogenerated Java/Android code does exhaustive switches that throw; response is schema sync plus static linters, bootcamps and fuzzing tests that inject nulls or unknown enum values to ensure clients don’t crash. For streaming/defer, ten-item newsfeed streams cause frequent remounts and frame drops, so servers assign per-item urgency and use exponential backoff batching and flush minimization to reduce frame drops and improve perceived latency.
AI-written summary · about
chapters (6)
- 0:00GraphQL IRL
- 3:39The easy case
- 9:10Exponential backoff
- 10:12The harder case
- 12:03The Solution
- 15:08Optimal Streaming Algorithm
related talks
50mThe Elm Architecture in Prod
28mPanel Discussion: The GraphQL Production Roundtable
28mMaking React Fun Again, with Sync Engines
12mImprove Application Performance and User Engagement with Advanced GraphQL Features
41mOptimizing Shared Types: How Intuit Streamlined Schema Evolution in a Federated Graph
48mAPI Optimization Tale: Monitor, Fix and Deploy (on Friday)
32mLower Latency With Streaming GraphQL
29mApps, Stacks, and Frameworks: Avoiding “Shiny Object” Syndrome
