From 5fe8ad81774c1d197b8ef691af6458c755c0c62a Mon Sep 17 00:00:00 2001 From: Zhen Li Date: Fri, 1 Nov 2019 11:23:06 +0100 Subject: [PATCH] `profilePageCacheHitRatio` should default to 0. As a result, fix how `hasPageCacheStats` is computed too. --- .../neo4j/driver/internal/summary/InternalProfiledPlan.java | 4 ++-- .../src/main/java/org/neo4j/driver/summary/ProfiledPlan.java | 2 +- .../org/neo4j/driver/internal/util/MetadataExtractorTest.java | 2 +- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/driver/src/main/java/org/neo4j/driver/internal/summary/InternalProfiledPlan.java b/driver/src/main/java/org/neo4j/driver/internal/summary/InternalProfiledPlan.java index 8641b7ee35..d3b18194fd 100644 --- a/driver/src/main/java/org/neo4j/driver/internal/summary/InternalProfiledPlan.java +++ b/driver/src/main/java/org/neo4j/driver/internal/summary/InternalProfiledPlan.java @@ -61,7 +61,7 @@ public long records() @Override public boolean hasPageCacheStats() { - return pageCacheHits > 0 || pageCacheMisses > 0 || !Double.isNaN( pageCacheHitRatio ); + return pageCacheHits > 0 || pageCacheMisses > 0 || pageCacheHitRatio > 0; } @Override @@ -96,7 +96,7 @@ public ProfiledPlan create( String operatorType, Map arguments, Li { return new InternalProfiledPlan( operatorType, arguments, identifiers, children, originalPlanValue.get( "dbHits" ).asLong( 0 ), originalPlanValue.get( "rows" ).asLong( 0 ), originalPlanValue.get( "pageCacheHits" ).asLong( 0 ), - originalPlanValue.get( "pageCacheMisses" ).asLong( 0 ), originalPlanValue.get( "pageCacheHitRatio" ).asDouble( Double.NaN ), + originalPlanValue.get( "pageCacheMisses" ).asLong( 0 ), originalPlanValue.get( "pageCacheHitRatio" ).asDouble( 0 ), originalPlanValue.get( "time" ).asLong( 0 ) ); } }; diff --git a/driver/src/main/java/org/neo4j/driver/summary/ProfiledPlan.java b/driver/src/main/java/org/neo4j/driver/summary/ProfiledPlan.java index b00de965a6..ba3c2df45f 100644 --- a/driver/src/main/java/org/neo4j/driver/summary/ProfiledPlan.java +++ b/driver/src/main/java/org/neo4j/driver/summary/ProfiledPlan.java @@ -53,7 +53,7 @@ public interface ProfiledPlan extends Plan long pageCacheMisses(); /** - * @return the ratio of page cache hits to total number of lookups or {@link Double#NaN} if no data is available + * @return the ratio of page cache hits to total number of lookups or 0 if no data is available */ double pageCacheHitRatio(); diff --git a/driver/src/test/java/org/neo4j/driver/internal/util/MetadataExtractorTest.java b/driver/src/test/java/org/neo4j/driver/internal/util/MetadataExtractorTest.java index 511faeeb11..ba1efdfaba 100644 --- a/driver/src/test/java/org/neo4j/driver/internal/util/MetadataExtractorTest.java +++ b/driver/src/test/java/org/neo4j/driver/internal/util/MetadataExtractorTest.java @@ -252,7 +252,7 @@ void shouldBuildResultSummaryWithProfiledPlan() assertEquals( 242424, summary.profile().dbHits() ); assertEquals( 999, summary.profile().time() ); assertFalse( summary.profile().hasPageCacheStats() ); - assertEquals( Double.NaN, summary.profile().pageCacheHitRatio() ); + assertEquals( 0, summary.profile().pageCacheHitRatio() ); assertEquals( 0, summary.profile().pageCacheMisses() ); assertEquals( 0, summary.profile().pageCacheHits() );