Skip to content

Add Flink config validation warnings#1865

Open
velo wants to merge 3 commits intomainfrom
flink-config-validation
Open

Add Flink config validation warnings#1865
velo wants to merge 3 commits intomainfrom
flink-config-validation

Conversation

@velo
Copy link
Collaborator

@velo velo commented Feb 13, 2026

Summary

  • Adds FlinkConfigValidator that validates engines.flink.config entries at compile time with 3 levels of checks:
    • Misplacement detection: warns when deployment-only keys (taskmanager-size, jobmanager-size, etc.) are placed in config instead of deployment
    • Unknown key detection with prefix awareness: scans Flink *Options classes via reflection to build known keys/prefixes; warns on unrecognized keys with extra hint when the prefix is valid (likely typo)
    • Value type validation: checks Boolean, Integer, Long, Duration, and MemorySize values against expected types
  • All checks emit warnings (not errors) via ErrorCollector.warn() so compilation is never blocked
  • Injects ErrorCollector into FlinkStreamEngine constructor to run validation on startup

Test plan

  • FlinkConfigValidatorTest — 11 test cases covering all validation levels and edge cases
  • All sqrl-planner tests pass (184/184, 0 failures)

🤖 Generated with Claude Code

…checks

Signed-off-by: Marvin Froeder <marvin@datasqrl.com>
@velo
Copy link
Collaborator Author

velo commented Feb 13, 2026

velo added 2 commits February 13, 2026 15:51
Signed-off-by: Marvin Froeder <marvin@datasqrl.com>
Signed-off-by: Marvin Froeder <marvin@datasqrl.com>
@codecov
Copy link

codecov bot commented Feb 13, 2026

Codecov Report

❌ Patch coverage is 83.75000% with 13 lines in your changes missing coverage. Please review.
✅ Project coverage is 13.55%. Comparing base (13863c4) to head (2787654).
✅ All tests successful. No failed tests found.

Files with missing lines Patch % Lines
...sqrl/engine/stream/flink/FlinkConfigValidator.java 84.81% 8 Missing and 4 partials ⚠️
...atasqrl/engine/stream/flink/FlinkStreamEngine.java 0.00% 1 Missing ⚠️
Additional details and impacted files
@@             Coverage Diff              @@
##               main    #1865      +/-   ##
============================================
+ Coverage     13.14%   13.55%   +0.40%     
- Complexity      742      774      +32     
============================================
  Files           550      551       +1     
  Lines         16137    16217      +80     
  Branches       1896     1915      +19     
============================================
+ Hits           2122     2199      +77     
+ Misses        13817    13816       -1     
- Partials        198      202       +4     

☔ View full report in Codecov by Sentry.
📢 Have feedback on the report? Share it here.

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.

1 participant