Class AdaptiveResolutionStrategy

Object
gudusoft.gsqlparser.resolver2.iterative.AdaptiveResolutionStrategy
All Implemented Interfaces:
ResolutionStrategy

public class AdaptiveResolutionStrategy extends Object implements ResolutionStrategy
Adaptive resolution strategy that adjusts based on query complexity.

This strategy analyzes the resolution progress and adapts its behavior: - If progress is good: Continue with current approach - If progress stalls: Enable more aggressive techniques (inference, expansion) - If query is complex: Use more iterations - If query is simple: Use fewer iterations

Adaptation criteria: - Resolution rate (% of columns resolved) - Progress per pass (columns resolved in each iteration) - Query complexity (number of CTEs, subqueries, etc.)

Example behavior:

 Simple query (SELECT a, b FROM t1):
   Pass 1: 100% resolved -> STOP (no need for more passes)

 Complex query (multiple nested CTEs):
   Pass 1: 30% resolved -> continue
   Pass 2: 60% resolved -> enable inference
   Pass 3: 85% resolved -> enable aggressive expansion
   Pass 4: 95% resolved -> final cleanup