Skip to content

Classify surviving deprecated APIs in storm-server, external modules, and utilities (#8994) - #9173

Open
Mohit20057 wants to merge 2 commits into
apache:masterfrom
Mohit20057:classify-server-deprecated-apis
Open

Mohit20057 wants to merge 2 commits into
apache:masterfrom
Mohit20057:classify-server-deprecated-apis

Conversation

@Mohit20057

@Mohit20057 Mohit20057 commented Oct 14, 2026 •

Copy link
Copy Markdown

What is the purpose of the change

Sub-task of umbrella issue #8994 ("inventory deprecated API and remove what is marked for removal").

This pull request classifies surviving @Deprecated declarations across storm-server, external/storm-hdfs, flux-core, and remaining storm-client utilities with explicit since = "..." and forRemoval = true/false decisions to provide clear lifecycle signals to users and downstream consumers without introducing breaking removals:

  1. storm-server:

    • Testing.java: Marked legacy test-cluster inspection and cluster lifecycle methods forRemoval = true (since = "2.0.0").
    • SchedulerAssignmentImpl.java: Marked getStatus() forRemoval = false (since = "2.0.0") as it remains in active use by the web UI and Nimbus scheduler APIs.
    • BaseResourceAwareStrategy.java: Marked legacy scoring helper methods forRemoval = true (since = "2.0.0").
    • NodeSorter.java & NodeSorterHostProximity.java: Marked legacy sortAllNodes(...) without cluster context forRemoval = true (since = "2.4.0").
  2. External modules (flux-core & storm-hdfs):

    • Flux.java: Marked obsolete CLI option constants (OPTION_LOCAL, OPTION_REMOTE, OPTION_SLEEP, OPTION_ZOOKEEPER) forRemoval = true (since = "2.0.0").
    • Configs.java: Marked 12 legacy HDFS spout configuration keys forRemoval = true (since = "2.0.0").
    • HdfsState.java: Marked HdfsFileOptions#addRotationAction(RotationAction) forRemoval = true (since = "2.0.0").
  3. storm-client utilities & security:

    • PlainSaslTransportPlugin.java, PlainClientCallbackHandler.java, SaslPlainServer.java: Added Javadoc deprecation notes and marked insecure test-only plain SASL provider classes forRemoval = true (since = "2.0.0").
    • StormMetricRegistry.java: Marked gauge(..., port) overload forRemoval = true (since = "2.3.0").
    • StormReporter.java: Marked prepare(MetricRegistry, ...) forRemoval = true (since = "2.3.0").
    • LinearDRPCTopologyBuilder.java: Marked addBolt(IRichBolt, ...) forRemoval = true (since = "2.0.0").

How was this tested

  • Built and compiled storm-server, storm-client, storm-hdfs, and flux-core with JDK 23
  • Checkstyle passed with 0 violations across all modified modules
  • Unit test verification:
    • storm-server: TestResourceAwareStrategy (14/14 tests passed)
    • storm-client: TestConfigValidate (38/38 tests passed)
    • external/storm-hdfs: ConfigsTest (2/2 tests passed)
    • flux/flux-core: TCKTest#testTCK (1/1 tests passed)

@Mohit20057 Mohit20057 changed the title Classify surviving deprecated storm-server APIs with forRemoval decisions (#8994) Classify surviving deprecated APIs in storm-server, external modules, and utilities (#8994) Oct 14, 2026
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