Make BytesReference an interface#48171
Merged
Tim-Brooks merged 11 commits intoelastic:masterfrom Oct 21, 2019
Merged
Conversation
Collaborator
|
Pinging @elastic/es-core-infra (:Core/Infra/Core) |
Contributor
Author
|
@elasticmachine run elasticsearch-ci/2 |
pugnascotia
reviewed
Oct 17, 2019
server/src/test/java/org/elasticsearch/common/bytes/ReleasableBytesReferenceTests.java
Outdated
Show resolved
Hide resolved
pugnascotia
reviewed
Oct 17, 2019
server/src/test/java/org/elasticsearch/common/bytes/ReleasableBytesReferenceTests.java
Outdated
Show resolved
Hide resolved
pugnascotia
reviewed
Oct 17, 2019
server/src/test/java/org/elasticsearch/common/bytes/ReleasableBytesReferenceTests.java
Outdated
Show resolved
Hide resolved
pugnascotia
reviewed
Oct 17, 2019
server/src/test/java/org/elasticsearch/common/bytes/ReleasableBytesReferenceTests.java
Outdated
Show resolved
Hide resolved
pugnascotia
approved these changes
Oct 17, 2019
pugnascotia
approved these changes
Oct 19, 2019
original-brownbear
approved these changes
Oct 19, 2019
Contributor
original-brownbear
left a comment
There was a problem hiding this comment.
LGTM I'm all for this refactoring, thanks @tbrooks8
| import org.elasticsearch.common.io.Streams; | ||
| import org.elasticsearch.common.io.stream.BytesStream; | ||
| import org.elasticsearch.common.io.stream.StreamOutput; | ||
| import org.elasticsearch.core.internal.io.IOUtils; |
Contributor
There was a problem hiding this comment.
NIT: revert this
jasontedor
added a commit
to jasontedor/elasticsearch
that referenced
this pull request
Oct 22, 2019
* elastic/master: [Docs] Fix opType options in IndexRequest API example. (elastic#48290) Simplify Shard Snapshot Upload Code (elastic#48155) Mute ClassificationIT tests (elastic#48338) Reenable azure repository tests and remove some randomization in http servers (elastic#48283) Use an env var for the classpath of jar hell task (elastic#48240) Refactor FIPS BootstrapChecks to simple checks (elastic#47499) Add "format" to "range" queries resulted from optimizing a logical AND (elastic#48073) [DOCS][Transform] document limitation regarding rolling upgrade with 7.2, 7.3 (elastic#48118) Fail with a better error when if there are no ingest nodes (elastic#48272) Fix executing enrich policies stats (elastic#48132) Use MultiFileTransfer in CCR remote recovery (elastic#44514) Make BytesReference an interface (elastic#48171) Also validate source index at put enrich policy time. (elastic#48254) Add 'javadoc' task to lifecycle check tasks (elastic#48214) Remove option to enable direct buffer pooling (elastic#47956) [DOCS] Add 'Selecting gateway and seed nodes' section to CCS docs (elastic#48297) Add Enrich Origin (elastic#48098) fix incorrect comparison (elastic#48208)
Tim-Brooks
added a commit
to Tim-Brooks/elasticsearch
that referenced
this pull request
Oct 24, 2019
BytesReference is currently an abstract class which is extended by various implementations. This makes it very difficult to use the delegation pattern. The implication of this is that our releasable BytesReference is a PagedBytesReference type and cannot be used as a generic releasable bytes reference that delegates to any reference type. This commit makes BytesReference an interface and introduces an AbstractBytesReference for common functionality.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
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.
BytesReference is currently an abstract class which is extended by
various implementations. This makes it very difficult to use the
delegation pattern. The implication of this is that our releasable
BytesReference is a PagedBytesReference type and cannot be used as a
generic releasable bytes reference that delegates to any reference type.
This commit makes BytesReference an interface and introduces an
AbstractBytesReference for common functionality.