Skip to content

Commit

Permalink
add better support for INDEX_ONLY
Browse files Browse the repository at this point in the history
  • Loading branch information
cangencer committed Jan 23, 2020
1 parent 9778cb7 commit 2246ba3
Show file tree
Hide file tree
Showing 2 changed files with 12 additions and 15 deletions.
19 changes: 8 additions & 11 deletions hazelcast/src/main/java/com/hazelcast/config/MapConfig.java
Expand Up @@ -822,17 +822,14 @@ private void validateSetOptimizeQueriesOption(boolean optimizeQueries) {
if (!setCacheDeserializedValuesExplicitlyInvoked) {
return;
}
if (cacheDeserializedValues == CacheDeserializedValues.INDEX_ONLY) {
throw new ConfigurationException("Deprecated option 'optimize-queries' is being set"
+ ", but 'cacheDeserializedValues' was set to INDEX_ONLY. "
+ "These are conflicting options. Please remove the `optimize-queries'");
} else if (cacheDeserializedValues == CacheDeserializedValues.NEVER && optimizeQueries) {
if ((cacheDeserializedValues == CacheDeserializedValues.INDEX_ONLY ||
cacheDeserializedValues == CacheDeserializedValues.NEVER) && optimizeQueries) {
throw new ConfigurationException("Deprecated option 'optimize-queries' is being set to true, "
+ "but 'cacheDeserializedValues' is set to NEVER. "
+ "but 'cacheDeserializedValues' was set to NEVER or INDEX_ONLY. "
+ "These are conflicting options. Please remove the `optimize-queries'");
} else if (cacheDeserializedValues == CacheDeserializedValues.ALWAYS && !optimizeQueries) {
throw new ConfigurationException("Deprecated option 'optimize-queries' is being set to false, "
+ "but 'cacheDeserializedValues' is set to ALWAYS. "
+ "but 'cacheDeserializedValues' was set to ALWAYS. "
+ "These are conflicting options. Please remove the `optimize-queries'");
}
}
Expand All @@ -852,7 +849,7 @@ public MapConfig setCacheDeserializedValues(CacheDeserializedValues cacheDeseria
return this;
}

private void validateCacheDeserializedValuesOption(CacheDeserializedValues validatedCacheDeserializedValues) {
private void validateCacheDeserializedValuesOption(CacheDeserializedValues newValue) {
if (!optimizeQueryExplicitlyInvoked) {
return;
}
Expand All @@ -861,13 +858,13 @@ private void validateCacheDeserializedValuesOption(CacheDeserializedValues valid
// we need to be strict with validation to detect conflicts
boolean optimizeQueryFlag = (cacheDeserializedValues == CacheDeserializedValues.ALWAYS);

if (optimizeQueryFlag && validatedCacheDeserializedValues != CacheDeserializedValues.ALWAYS) {
if (optimizeQueryFlag && newValue != CacheDeserializedValues.ALWAYS) {
throw new ConfigurationException("Deprecated option 'optimize-queries' is set to `true`, "
+ "but 'cacheDeserializedValues' is being set to NEVER or INDEX_ONLY."
+ " These are conflicting options. Please remove the `optimize-queries'");
} else if (!optimizeQueryFlag && validatedCacheDeserializedValues != CacheDeserializedValues.NEVER) {
} else if (!optimizeQueryFlag && newValue == CacheDeserializedValues.ALWAYS) {
throw new ConfigurationException("Deprecated option 'optimize-queries' is set to `false`, "
+ "but 'cacheDeserializedValues' is begin set to ALWAYS or INDEX_ONLY. These are conflicting options."
+ "but 'cacheDeserializedValues' is begin set to ALWAYS. These are conflicting options."
+ " Please remove the `optimize-queries'");
}
}
Expand Down
Expand Up @@ -312,8 +312,8 @@ public void givenCacheDeserializedValuesSetToALWAYS_whenSetOptimizeQueriesToFals
mapConfig.setOptimizeQueries(false);
}

@Test(expected = ConfigurationException.class)
public void givenCacheDeserializedValuesSetToINDEX_ONLY_whenSetOptimizeQueriesToFalse_thenThrowConfigurationException() {
@Test
public void givenCacheDeserializedValuesSetToINDEX_ONLY_whenSetOptimizeQueriesToFalse_thenNoException() {
// given
MapConfig mapConfig = new MapConfig();
mapConfig.setCacheDeserializedValues(CacheDeserializedValues.INDEX_ONLY);
Expand Down Expand Up @@ -401,8 +401,8 @@ public void givenSetOptimizeQueryIsFalse_whenSetCacheDeserializedValuesToNEVER_t
mapConfig.setCacheDeserializedValues(CacheDeserializedValues.NEVER);
}

@Test(expected = ConfigurationException.class)
public void givenSetOptimizeQueryIsFalse_whenSetCacheDeserializedValuesToINDEX_ONLY_thenThrowConfigurationException() {
@Test
public void givenSetOptimizeQueryIsFalse_whenSetCacheDeserializedValuesToINDEX_ONLY_thenThrowNoException() {
// given
MapConfig mapConfig = new MapConfig();
mapConfig.setOptimizeQueries(false);
Expand Down

0 comments on commit 2246ba3

Please sign in to comment.