quality_assurance · saas · workflow

FixrLeak: Uber's GenAI framework for automated Java resource leak repair

Resource leaks in Java applications lead to performance degradation and system failures, and while SonarQube identifies them effectively, the fixing process remained manual, time-consuming, and error-prone at Uber's codebase scale.

How it works
Common implementation structure
How this type of workflow is generally built, generalized across documented cases — not tied to any one vendor's stack. Click any stage to read what happens there. Specific products that implement these stages appear in “Tools commonly seen” below.
Stage 1 · SonarQube leak report scanning
FixrLeak starts by scanning resource leaks reported by SonarQube, gathering key details like file names and line numbers.
Tools used
SonarQubeTree-sitterChatGPT-4OFixrLeak
Outcome

FixrLeak successfully automated fixes for 93 out of 102 eligible resource leaks in Uber's Java codebase, significantly reducing manual effort and improving developer productivity and code quality, and continues to run periodically.

What failed first

Template-based tools like RLFixer struggled to scale in Uber's massive codebase and required extensive manual setup. GenAI predecessor InferFix achieved only 70% fix accuracy and relied on proprietary models that couldn't adapt to evolving technologies.

Results
Volume93
Source

https://www.uber.com/en-NL/blog/fixrleak-fixing-java-resource-leaks-with-genai/

How we source this →

Grounding & classification
Source type: technical build writeup
27 fields verified against source quotes.
agentic workflowcode generationcode diff prfailure mode describedhuman review describedmetric backednamed customerproduction runtime claimedtools describedworkflow describedsoftwareautomation rateemployee productivityerror reductiontime savedtechnical build writeupquality assuranceai draft human approval