Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Make DiffableUtils.diff implementation agnostic #88403

Merged
merged 1 commit into from
Jul 12, 2022

Conversation

rjernst
Copy link
Member

@rjernst rjernst commented Jul 9, 2022

DiffableUtils has methods for reading and creating diffs of maps. The
two implementation types, a JDK Map or ImmutableOpenMap, have different
methods and implementations. However, the format of the diff is always
the same, so the diff creation can be shared. This commit creates an
internal MapBuilder abstraction to allow both Map and ImmutableOpenMap
to produce diffs from the same MapDiff implementation.

relates #86239

DiffableUtils has methods for reading and creating diffs of maps. The
two implementation types, a JDK Map or ImmutableOpenMap, have different
methods and implementations. However, the format of the diff is always
the same, so the diff creation can be shared. This commit creates an
internal MapBuilder abstraction to allow both Map and ImmutableOpenMap
to produce diffs from the same MapDiff implementation.

relates elastic#86239
@rjernst rjernst added :Core/Infra/Core Core issues without another label >refactoring v8.4.0 labels Jul 9, 2022
@elasticmachine elasticmachine added the Team:Core/Infra Meta label for core/infra team label Jul 9, 2022
@elasticmachine
Copy link
Collaborator

Pinging @elastic/es-core-infra (Team:Core/Infra)

Copy link
Member

@original-brownbear original-brownbear left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, nice cleanup!

@rjernst rjernst merged commit 5d23480 into elastic:master Jul 12, 2022
@rjernst rjernst deleted the hppc/diffable branch July 12, 2022 23:16
weizijun added a commit to weizijun/elasticsearch that referenced this pull request Jul 13, 2022
* upstream/master: (38 commits)
  Simplify map copying (elastic#88432)
  Make DiffableUtils.diff implementation agnostic (elastic#88403)
  Ingest: Start separating Metadata from IngestSourceAndMetadata (elastic#88401)
  Move runtime fields base scripts out of scripting fields api package. (elastic#88488)
  Enable TRACE Logging for test and increase timeout (elastic#88477)
  Mute ReactiveStorageIT#testScaleDuringSplitOrClone (elastic#88480)
  Track the count of failed invocations since last successful policy snapshot (elastic#88398)
  Avoid noisy exceptions on data nodes when aborting snapshots (elastic#88476)
  Fix ReactiveStorageDeciderServiceTests testNodeSizeForDataBelowLowWatermark (elastic#88452)
  INFO logging of snapshot restore and completion (elastic#88257)
  unmute test (elastic#88454)
  Updatable API keys - noop check (elastic#88346)
  Corrected an incomplete sentence. (elastic#86542)
  Use consistent shard map type in IndexService (elastic#88465)
  Stop registering TestGeoShapeFieldMapperPlugin in ESIntegTestCase (elastic#88460)
  TSDB: RollupShardIndexer logging improvements (elastic#88416)
  Audit API key ID when create or grant API keys (elastic#88456)
  Bound random negative size test in SearchSourceBuilderTests#testNegativeSizeErrors (elastic#88457)
  Updatable API keys - logging audit trail event (elastic#88276)
  Polish reworked LoggedExec task (elastic#88424)
  ...

# Conflicts:
#	x-pack/plugin/rollup/src/main/java/org/elasticsearch/xpack/rollup/v2/RollupShardIndexer.java
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
:Core/Infra/Core Core issues without another label >refactoring Team:Core/Infra Meta label for core/infra team v8.4.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants