GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • ActionsCI/CD and automation
  • CodespacesCloud development environments
  • All Features
  • Documentation
  • Training
  • Certifications
  • Build with Copilot
  • Customize Copilot
  • Integrations
  • Trending repos
  • GitHub Sponsors
  • Developer articles
  • Enterprises

This view

  • Original page
  • New address

GeezerVison is showing github.com — build: exclude the generated CCJSqlParser from JaCoCo by minleejae · Pull Request #2867 · JSQLParser/JSqlParser

Conversation

@minleejae

@minleejae minleejae commented Oct 28, 2026

Copy link
Copy Markdown
Contributor

Implements the short-term fix proposed in #2866. Instrumented by JaCoCo, the generated CCJSqlParser class has 808 constant-pool entries left on master (c84ad0ebc). When a grammar change crosses the limit, the agent fails with ClassTooLargeException, loads the parser uninstrumented, and jacocoTestCoverageVerification fails.

The parser is now excluded from the agent (test.jacoco.excludes), from jacocoTestReport and from jacocoTestCoverageVerification. The agent already excluded CCJSqlParserTokenManager this way. The report and verification exclusions use the exact class-file paths **/parser/CCJSqlParserTokenManager.class and **/parser/CCJSqlParser.class, so nested classes such as CCJSqlParser$ObjectNames stay instrumented and measured.

This also closes two gaps in the existing TokenManager exclusion, which together counted the uninstrumented TokenManager as 0% covered in both tasks:

  • The verification pattern **CCJSqlParserTokenManager** did not match the class-file path.
  • The report had no exclusion at all.

The coverage thresholds, the rule-level excludes and the Maven build are unchanged.

Validation:

  • Java 17 Gradle check passes: 12,262 tests with 0 failures and 25 skipped. Grammar ambiguity, formatting (Spotless ratchet against upstream/master), Checkstyle, PMD, SpotBugs and JaCoCo all pass.

  • The test execution data contains the nested CCJSqlParser$… classes but neither CCJSqlParser nor CCJSqlParserTokenManager. The HTML report lists neither class.

  • Bundle totals checked by the verification rules:

    master this change
    Instruction covered ratio 0.7537 0.8274
    Missed lines 14,892 7,336

    The numbers change because two classes leave the bundle, not because coverage improves:

    • the TokenManager: 815 lines, 0% covered;
    • the parser: 82.19% covered, 6,741 of 37,575 lines missed.

AI assistance: prepared with Claude Code.

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

All reactions
@minleejae
build: exclude the generated CCJSqlParser from JaCoCo
2c1714b
Instrumented by JaCoCo, the generated CCJSqlParser class is close to the
65,535 constant-pool limit (808 entries left on c84ad0e). Past the
limit the agent loads it uninstrumented and the coverage verification
fails.

Exclude it from the agent, the report and the verification, like the
TokenManager. The verification pattern "**CCJSqlParserTokenManager**"
did not match the class file, so both classes are now excluded by their
exact paths, which keeps the nested helper classes measured.

See JSQLParser#2866.

Signed-off-by: minleejae <[email protected]>
@manticore-projects
manticore-projects merged commit 401a81a into JSQLParser:master Oct 29, 2026
10 checks passed

Uh oh!

There was an error while loading. Please reload this page.

@manticore-projects

manticore-projects commented Oct 29, 2026

Copy link
Copy Markdown
Contributor

Thank you very much!

All reactions

Sorry, something went wrong.

Uh oh!

There was an error while loading. Please reload this page.

@minleejae minleejae mentioned this pull request Nov 9, 2026
Pass grammar locations to the generated parser as indexes manticore-projects/javacc-8-java#2
Merged
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

No reviews

Uh oh!

There was an error while loading. Please reload this page.

Assignees

No one assigned

Labels

None yet

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

Uh oh!

There was an error while loading. Please reload this page.

2 participants

@minleejae @manticore-projects
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.