Repository: usergrid Updated Branches: refs/heads/2.1-release 5fd1d5df5 -> 6dfa2e290
Adds more explicit check for isCompactionPending. Directly checks for a compaction target. Project: http://git-wip-us.apache.org/repos/asf/usergrid/repo Commit: http://git-wip-us.apache.org/repos/asf/usergrid/commit/9c54de3d Tree: http://git-wip-us.apache.org/repos/asf/usergrid/tree/9c54de3d Diff: http://git-wip-us.apache.org/repos/asf/usergrid/diff/9c54de3d Branch: refs/heads/2.1-release Commit: 9c54de3d59f6e5f21fb3970951c4157be0540d2d Parents: 5fd1d5d Author: Todd Nine <[email protected]> Authored: Thu Nov 5 14:16:09 2015 -0700 Committer: Todd Nine <[email protected]> Committed: Thu Nov 5 14:16:09 2015 -0700 ---------------------------------------------------------------------- .../impl/shard/ShardEntryGroup.java | 3 ++- .../impl/shard/ShardEntryGroupTest.java | 28 ++++++++++++++++++++ 2 files changed, 30 insertions(+), 1 deletion(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/usergrid/blob/9c54de3d/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroup.java ---------------------------------------------------------------------- diff --git a/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroup.java b/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroup.java index 543f1fb..403ccf8 100644 --- a/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroup.java +++ b/stack/corepersistence/graph/src/main/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroup.java @@ -188,7 +188,8 @@ public class ShardEntryGroup { * Return true if we have a pending compaction */ public boolean isCompactionPending() { - return !isTooSmallToCompact(); + //if we have a compaction target, a compaction is pending + return getCompactionTarget() != null; } http://git-wip-us.apache.org/repos/asf/usergrid/blob/9c54de3d/stack/corepersistence/graph/src/test/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroupTest.java ---------------------------------------------------------------------- diff --git a/stack/corepersistence/graph/src/test/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroupTest.java b/stack/corepersistence/graph/src/test/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroupTest.java index 30634e2..28d42d2 100644 --- a/stack/corepersistence/graph/src/test/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroupTest.java +++ b/stack/corepersistence/graph/src/test/java/org/apache/usergrid/persistence/graph/serialization/impl/shard/ShardEntryGroupTest.java @@ -406,6 +406,34 @@ public class ShardEntryGroupTest { assertFalse( shardEntryGroup.canBeDeleted( minShard ) ); } + + @Test + public void isCompactionPending(){ + //set with no shard + + final Shard minShard = Shard.MIN_SHARD; + + final ShardEntryGroup oneShardGroup = new ShardEntryGroup( 1 ); + + oneShardGroup.addShard( minShard ); + + assertFalse(oneShardGroup.isCompactionPending()); + + + //now test with 2 shards, 1 marked as non compacted. + + final Shard nextShard = new Shard( 1000, 1000, false ); + + final ShardEntryGroup pendingGroup = new ShardEntryGroup( 1 ); + + pendingGroup.addShard( nextShard ); + pendingGroup.addShard( minShard ); + + assertTrue(pendingGroup.isCompactionPending()); + + + + } }
