[hibernate-commits] [hibernate/hibernate-search] 6804bc: HSEARCH-2172 Make it possible for different indexi...
GitHub
noreply at github.com
Tue Dec 13 17:29:07 EST 2016
Branch: refs/heads/master
Home: https://github.com/hibernate/hibernate-search
Commit: 6804bc87ba5456cd28c26f1d4cea5e465af56fe2
https://github.com/hibernate/hibernate-search/commit/6804bc87ba5456cd28c26f1d4cea5e465af56fe2
Author: Yoann Rodière <yoann at hibernate.org>
Date: 2016-12-13 (Tue, 13 Dec 2016)
Changed paths:
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/bridge/builtin/impl/ElasticsearchBooleanBridge.java
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/schema/impl/DefaultElasticsearchSchemaTranslator.java
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/spi/ElasticsearchIndexManagerType.java
M engine/src/main/java/org/hibernate/search/bridge/builtin/NumericEncodingDateBridge.java
M engine/src/main/java/org/hibernate/search/bridge/builtin/NumericFieldBridge.java
M engine/src/main/java/org/hibernate/search/bridge/builtin/impl/NullEncodingTwoWayFieldBridge.java
R engine/src/main/java/org/hibernate/search/bridge/builtin/nullencoding/impl/KeywordBasedNullCodec.java
R engine/src/main/java/org/hibernate/search/bridge/builtin/nullencoding/impl/NotEncodingCodec.java
R engine/src/main/java/org/hibernate/search/bridge/builtin/nullencoding/impl/NumericDoubleNullCodec.java
R engine/src/main/java/org/hibernate/search/bridge/builtin/nullencoding/impl/NumericFloatNullCodec.java
R engine/src/main/java/org/hibernate/search/bridge/builtin/nullencoding/impl/NumericIntegerNullCodec.java
R engine/src/main/java/org/hibernate/search/bridge/builtin/nullencoding/impl/NumericLongNullCodec.java
M engine/src/main/java/org/hibernate/search/bridge/builtin/time/impl/DurationBridge.java
M engine/src/main/java/org/hibernate/search/bridge/builtin/time/impl/InstantBridge.java
M engine/src/main/java/org/hibernate/search/bridge/builtin/time/impl/YearBridge.java
M engine/src/main/java/org/hibernate/search/bridge/spi/EncodingBridge.java
A engine/src/main/java/org/hibernate/search/bridge/spi/NullMarker.java
R engine/src/main/java/org/hibernate/search/bridge/spi/NullMarkerCodec.java
M engine/src/main/java/org/hibernate/search/bridge/util/impl/EncodingStringBridge.java
A engine/src/main/java/org/hibernate/search/bridge/util/impl/ToStringNullMarker.java
M engine/src/main/java/org/hibernate/search/engine/impl/LuceneOptionsImpl.java
M engine/src/main/java/org/hibernate/search/engine/metadata/impl/AnnotationMetadataProvider.java
M engine/src/main/java/org/hibernate/search/engine/metadata/impl/DocumentFieldMetadata.java
M engine/src/main/java/org/hibernate/search/engine/metadata/impl/MetadataProvider.java
M engine/src/main/java/org/hibernate/search/engine/metadata/impl/ParseContext.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/LuceneDoubleNullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/LuceneFloatNullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/LuceneIntegerNullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/LuceneLongNullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/LuceneNullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/LuceneStringNullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/NotEncodingCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/codec/impl/NullMarkerCodec.java
A engine/src/main/java/org/hibernate/search/engine/nulls/impl/LuceneMissingValueStrategy.java
A engine/src/main/java/org/hibernate/search/engine/nulls/impl/MissingValueStrategy.java
M engine/src/main/java/org/hibernate/search/engine/spi/DocumentBuilderIndexedEntity.java
M engine/src/main/java/org/hibernate/search/indexes/spi/IndexManagerType.java
M engine/src/main/java/org/hibernate/search/indexes/spi/LuceneEmbeddedIndexManagerType.java
M engine/src/main/java/org/hibernate/search/metadata/impl/FieldDescriptorImpl.java
M engine/src/main/java/org/hibernate/search/util/logging/impl/Log.java
Log Message:
-----------
HSEARCH-2172 Make it possible for different indexing services to use different NullMarkerCodecs
This essentially split responsibilities around null encoding:
* encoding indexNullAs as an indexable value remains the responsibility
of bridges implementing EncodingBridge, though they now do that
more explicitely. They now return a simpler NullMarker instead
of a NullMarkerCodec.
* adding the encoded value to a document and querying null values
remains the responsibility of the NullMarkerCodec, but it is
now defined (based on the NullMarker) by a MissingValueStrategy,
which is defined by the IndexManagerType.
Commit: b851a8745956452b2fb9f768f30d65e356ec1469
https://github.com/hibernate/hibernate-search/commit/b851a8745956452b2fb9f768f30d65e356ec1469
Author: Yoann Rodière <yoann at hibernate.org>
Date: 2016-12-13 (Tue, 13 Dec 2016)
Changed paths:
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/impl/ElasticsearchLuceneQueryTranslator.java
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/impl/ElasticsearchNestingContextFactoryProvider.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/util/impl/ElasticsearchEntityHelper.java
Log Message:
-----------
HSEARCH-2172 Add a helper to test whether an entity is mapped with Elasticsearch available
This code was previously copied in two different places.
Commit: 22692b60a8d9b0b78ce2a5f7072b9f5b168d0546
https://github.com/hibernate/hibernate-search/commit/22692b60a8d9b0b78ce2a5f7072b9f5b168d0546
Author: Yoann Rodière <yoann at hibernate.org>
Date: 2016-12-13 (Tue, 13 Dec 2016)
Changed paths:
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/impl/AbstractMarkerField.java
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/impl/ElasticsearchIndexWorkVisitor.java
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/impl/ElasticsearchNestingContextFactoryProvider.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchBooleanNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchDoubleNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchFloatNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchIntegerNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchLongNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/codec/impl/ElasticsearchStringNullMarkerCodec.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/impl/ElasticsearchMissingValueStrategy.java
A elasticsearch/src/main/java/org/hibernate/search/elasticsearch/nulls/impl/ElasticsearchNullMarkerField.java
M elasticsearch/src/main/java/org/hibernate/search/elasticsearch/spi/ElasticsearchIndexManagerType.java
M elasticsearch/src/test/java/org/hibernate/search/elasticsearch/test/ElasticsearchIndexNullAsIT.java
Log Message:
-----------
HSEARCH-2172 Ensure non-null fields with a value equal to the indexAsNull marker are not indexed as null with Elasticsearch
This is done by making the Elasticsearch index manager type provide its
own MissingValueStrategy, that will use NullMarkerCodecs that add
specific markers in the document when indexing.
This enables the ElasticsearchIndexWorkVisitor to distinguish between
actual null values and non-null values that happen to match the null
marker.
Commit: f0ee99f4acf0bd05d033c829864f985d2391969d
https://github.com/hibernate/hibernate-search/commit/f0ee99f4acf0bd05d033c829864f985d2391969d
Author: Yoann Rodière <yoann at hibernate.org>
Date: 2016-12-13 (Tue, 13 Dec 2016)
Changed paths:
M elasticsearch/src/test/java/org/hibernate/search/elasticsearch/test/GolfPlayer.java
Log Message:
-----------
HSEARCH-2172 Fix ElasticsearchNullValueIT.testProjectionOfNullValues
There was an issue in GolfPlayer.Builder that altered the value of
GolfPlayer.active when it wasn't explicitly initialized.
The issue didn't show up before because the value was being initialized
with "false", which was indexed as null because of the bug we just
fixed.
Compare: https://github.com/hibernate/hibernate-search/compare/529a2d454467...f0ee99f4acf0
More information about the hibernate-commits
mailing list