Skip to content

Conversation

LucasEby
Copy link
Contributor

Fixes #24870

Motivation

The below test performed an assertion that incorrectly assumed the order of the HashSet data that was utilized in the formation of one of the arrays. No guarantees are made to the iteration order of the set or that this order will remain constant over time. As a result, the ordering can change due to different environments producing the contents in different orders despite the logical contents being the same.

  • org.apache.pulsar.common.policies.data.PoliciesDataTest.propertyAdmin

In essence, these changes keep the spirit of the original tests while eliminating failures caused solely by the previously unexpected reordering the HashSet can induce onto the final array contents.

Modifications

The original test converted the HashSet data directly into an ArrayList, incorrectly assuming a consistent iteration order. We now sort the ArrayList prior to asserting to ensure deterministic ordering.

In essence, these changes keep the spirit of the original tests while eliminating failures caused solely by allowed (but previously unexpected) reordering.

Verifying this change

  • Make sure that the change passes the CI checks.

This change is already covered by existing tests, such as

  • org.apache.pulsar.common.policies.data.PoliciesDataTest.propertyAdmin

Does this pull request potentially affect one of the following parts:

If the box was checked, please highlight the changes

  • Dependencies (add or upgrade a dependency)
  • The public API
  • The schema
  • The default values of configurations
  • The threading model
  • The binary protocol
  • The REST endpoints
  • The admin CLI options
  • The metrics
  • Anything that affects deployment

Documentation

  • doc
  • doc-required
  • doc-not-needed
  • doc-complete

Matching PR in forked repository

PR in forked repository: LucasEby#5

@github-actions github-actions bot added the doc-not-needed Your PR changes do not impact docs label Oct 18, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

doc-not-needed Your PR changes do not impact docs

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[Bug] Incorrect Assumption on HashSet Iteration Order in PoliciesDataTest.propertyAdmin"

1 participant