You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@accumulo.apache.org by ct...@apache.org on 2020/11/16 17:24:33 UTC
[accumulo] branch main updated: Stabilize NamespaceIdTest and
TableIdTest (#1779)
This is an automated email from the ASF dual-hosted git repository.
ctubbsii pushed a commit to branch main
in repository https://gitbox.apache.org/repos/asf/accumulo.git
The following commit(s) were added to refs/heads/main by this push:
new 9c8bb33 Stabilize NamespaceIdTest and TableIdTest (#1779)
9c8bb33 is described below
commit 9c8bb334c00637514c41f04c6abeca1ec6e20711
Author: Christopher Tubbs <ct...@apache.org>
AuthorDate: Mon Nov 16 12:23:44 2020 -0500
Stabilize NamespaceIdTest and TableIdTest (#1779)
TableId and NamespaceId have tests to ensure their caches work
correctly. Previously, the tests would only *attempt* to increase the
cache before checking that it decreased again. However, a garbage
collection could have reduced the size of the cache before we checked
its size. This change *guarantees* the cache will reach a specific size
before proceeding.
---
.../test/java/org/apache/accumulo/core/data/NamespaceIdTest.java | 9 +++++----
.../src/test/java/org/apache/accumulo/core/data/TableIdTest.java | 9 +++++----
2 files changed, 10 insertions(+), 8 deletions(-)
diff --git a/core/src/test/java/org/apache/accumulo/core/data/NamespaceIdTest.java b/core/src/test/java/org/apache/accumulo/core/data/NamespaceIdTest.java
index 3a803ae..5f6b9bf 100644
--- a/core/src/test/java/org/apache/accumulo/core/data/NamespaceIdTest.java
+++ b/core/src/test/java/org/apache/accumulo/core/data/NamespaceIdTest.java
@@ -79,12 +79,13 @@ public class NamespaceIdTest {
assertEquals(namespaceString, nsId.canonical());
// create a bunch more and throw them away
- for (int i = 0; i < 999; i++) {
- NamespaceId.of(new String("namespace" + i));
+ long preGCSize = 0;
+ int i = 0;
+ while ((preGCSize = NamespaceId.cache.asMap().entrySet().stream().count()) < 100) {
+ NamespaceId.of(new String("namespace" + i++));
}
- long preGCSize = NamespaceId.cache.asMap().entrySet().stream().count();
LOG.info("Entries before System.gc(): {}", preGCSize);
- assertTrue(preGCSize > 500); // verify amount increased significantly
+ assertEquals(100, preGCSize);
long postGCSize = preGCSize;
while (postGCSize >= preGCSize) {
TableIdTest.tryToGc();
diff --git a/core/src/test/java/org/apache/accumulo/core/data/TableIdTest.java b/core/src/test/java/org/apache/accumulo/core/data/TableIdTest.java
index cfd8ca1..119e5ff 100644
--- a/core/src/test/java/org/apache/accumulo/core/data/TableIdTest.java
+++ b/core/src/test/java/org/apache/accumulo/core/data/TableIdTest.java
@@ -88,12 +88,13 @@ public class TableIdTest {
assertEquals(tableString, table1.canonical());
// create a bunch more and throw them away
- for (int i = 0; i < 999; i++) {
- TableId.of(new String("table" + i));
+ long preGCSize = 0;
+ int i = 0;
+ while ((preGCSize = TableId.cache.asMap().entrySet().stream().count()) < 100) {
+ TableId.of(new String("table" + i++));
}
- long preGCSize = TableId.cache.asMap().entrySet().stream().count();
LOG.info("Entries before System.gc(): {}", preGCSize);
- assertTrue(preGCSize > 500); // verify amount increased significantly
+ assertEquals(100, preGCSize);
long postGCSize = preGCSize;
while (postGCSize >= preGCSize) {
tryToGc();