Skip to content

Improve metadata OOM diagnostics#18115

Open
Caideyipi wants to merge 1 commit into
apache:dev/1.3from
Caideyipi:cp-9dd1bb8-dev-1.3
Open

Improve metadata OOM diagnostics#18115
Caideyipi wants to merge 1 commit into
apache:dev/1.3from
Caideyipi:cp-9dd1bb8-dev-1.3

Conversation

@Caideyipi

Copy link
Copy Markdown
Collaborator

Description

Backport #18039 / 9dd1bb8 to dev/1.3.

Metadata OOM diagnostics

  • Track matched, expanded, and generated result columns during query analysis.
  • Track schema-fetch deserialized column counts and schema tree memory reservation.
  • Enrich MemoryNotEnoughException with column counts, SLIMIT/SOFFSET, ALIGN BY DEVICE guidance, and memory details.
  • Add unit coverage for the enriched diagnostics.

Branch adaptation

dev/1.3 does not have the newer query i18n source roots, so the diagnostic message templates are kept as local constants in MPPQueryContext for this branch.

Verification

  • mvn spotless:apply -pl iotdb-core/datanode
  • mvn "-Ddevelocity.off=true" -pl iotdb-core/datanode -Dtest=MPPQueryContextTest test fails during datanode compilation before running the test, with unrelated compile errors around PipePeriodicalLogReducer and FileUtils#createLink.

This PR has:

  • been self-reviewed.
  • concurrent read
  • concurrent write
  • concurrent read and write
  • added documentation for new or modified features or behaviors.
  • added Javadocs for most classes and all non-trivial methods.
  • added or updated version, license, or notice information
  • added comments explaining the "why" and the intent of the code wherever would not be obvious for an unfamiliar reader.
  • added unit tests or modified existing tests to cover new code paths, ensuring the threshold for code coverage.
  • added integration tests.
  • been tested in a test IoTDB cluster.

Key changed/added classes (or packages if there are too many classes) in this PR
  • MPPQueryContext
  • ClusterSchemaTree
  • AnalyzeVisitor
  • ExpressionUtils
  • ClusterSchemaFetchExecutor
  • MPPQueryContextTest

* Improve metadata OOM diagnostics

* Internationalize metadata OOM diagnostics
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