You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@hbase.apache.org by Rishi Misra <ri...@gmail.com> on 2019/10/16 16:21:13 UTC

TestProcedureStoreTracker - test timed out after 780 seconds

Hi there,

I am trying to figure out how to extend the timeout beyond 780 seconds
for org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker
testcases.

I already tried creating a global @Rule in  TestProcedureStoreTracker.java
class to no avail.

mvn -X -Dtest=TestProcedureStoreTracker#testLoad test

/==================/
  @Rule
  public Timeout globalTimeout = Timeout.seconds(900);
/==================/

This was in addition to increasing surefire.timeout settings in pom.xml to
9000.

I was wondering if anyone can tell me where this 780 second timeout is set
and how can I increase it to a bigger value?

Thanks in advance.

Re: TestProcedureStoreTracker - test timed out after 780 seconds

Posted by Rishi Misra <ri...@gmail.com>.
Hmmm .. changing HBaseClassTestRule did not help.  It continues to timeout at 780 seconds. 

I also tried changing TestQuotaThrottle but that didn't help either.  Any other places I can look?

/================================/
[root@11ea24ef3210 hbase-procedure]# git diff
diff --git a/hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseClassTestRule.java b/hbase-common/src/te
index c3bef0f..ad1e990 100644
--- a/hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseClassTestRule.java
+++ b/hbase-common/src/test/java/org/apache/hadoop/hbase/HBaseClassTestRule.java
@@ -62,7 +62,7 @@ public final class HBaseClassTestRule implements TestRule {
     for (Class<?> c : categories[0].value()) {
       if (c == SmallTests.class || c == MediumTests.class || c == LargeTests.class) {
         // All tests have a 10minute timeout.
-        return TimeUnit.MINUTES.toSeconds(13);
+        return TimeUnit.MINUTES.toSeconds(30);
       }
       if (c == IntegrationTests.class) {
         return TimeUnit.MINUTES.toSeconds(Long.MAX_VALUE);
diff --git a/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaThrottle.java b/hbase-server/
index 993007df..1192e7f 100644
--- a/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaThrottle.java
+++ b/hbase-server/src/test/java/org/apache/hadoop/hbase/quotas/TestQuotaThrottle.java
@@ -616,7 +616,7 @@ public class TestQuotaThrottle {
     triggerTableCacheRefresh(TEST_UTIL, false, TABLE_NAMES[0]);
     // Add 13req/min limit for the user
     admin.setQuota(QuotaSettingsFactory.throttleNamespace(NAMESPACE, ThrottleType.REQUEST_NUMBER,
-      13, TimeUnit.MINUTES));
+      30, TimeUnit.MINUTES));
     triggerNamespaceCacheRefresh(TEST_UTIL, false, TABLE_NAMES[1]);

     // should execute at max 6 requests on table[0] and (13 - 6) on table[1]
(END)
....

[INFO] Running org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0, Time elapsed: 780.244 s <<< FAILURE! - in org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker
[ERROR] org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker  Time elapsed: 780.012 s  <<< ERROR!
org.junit.runners.model.TestTimedOutException: test timed out after 780 seconds
        at org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker.testLoad(TestProcedureStoreTracker.java:188)

[INFO]
[INFO] Results:
[INFO]
[ERROR] Errors:
[ERROR]   TestProcedureStoreTracker.testLoad:188 ? TestTimedOut test timed out after 780...
[INFO]
[ERROR] Tests run: 1, Failures: 0, Errors: 1, Skipped: 0

/================================/

On 2019/10/16 19:01:57, Rishi Misra <ri...@gmail.com> wrote: 
> On slower machines this is more than likely to fail so even reducing iterations may not help.  Perhaps allowing a command line option/config value to increase the time out defaults might work better.
> 
> On 2019/10/16 18:31:31, Stack <st...@duboce.net> wrote: 
> > See HBaseClassTestRule where it sets the general test timeout to a maximum
> > of 13 minutes.
> > 
> > We like to break up tests if they are running close to this upper bound.
> > 
> > Should we break up TestProcedureStoreTracker or cut down the number of
> > iterations we run in tests?
> > 
> > Thanks,
> > S
> > 
> > On Wed, Oct 16, 2019 at 9:35 AM Rishi Misra <ri...@gmail.com>
> > wrote:
> > 
> > > Hi there,
> > >
> > > I am trying to figure out how to extend the timeout beyond 780 seconds
> > > for org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker
> > > testcases.
> > >
> > > I already tried creating a global @Rule in  TestProcedureStoreTracker.java
> > > class to no avail.
> > >
> > > mvn -X -Dtest=TestProcedureStoreTracker#testLoad test
> > >
> > > /==================/
> > >   @Rule
> > >   public Timeout globalTimeout = Timeout.seconds(900);
> > > /==================/
> > >
> > > This was in addition to increasing surefire.timeout settings in pom.xml to
> > > 9000.
> > >
> > > I was wondering if anyone can tell me where this 780 second timeout is set
> > > and how can I increase it to a bigger value?
> > >
> > > Thanks in advance.
> > >
> > 
> 

Re: TestProcedureStoreTracker - test timed out after 780 seconds

Posted by Rishi Misra <ri...@gmail.com>.
On slower machines this is more than likely to fail so even reducing iterations may not help.  Perhaps allowing a command line option/config value to increase the time out defaults might work better.

On 2019/10/16 18:31:31, Stack <st...@duboce.net> wrote: 
> See HBaseClassTestRule where it sets the general test timeout to a maximum
> of 13 minutes.
> 
> We like to break up tests if they are running close to this upper bound.
> 
> Should we break up TestProcedureStoreTracker or cut down the number of
> iterations we run in tests?
> 
> Thanks,
> S
> 
> On Wed, Oct 16, 2019 at 9:35 AM Rishi Misra <ri...@gmail.com>
> wrote:
> 
> > Hi there,
> >
> > I am trying to figure out how to extend the timeout beyond 780 seconds
> > for org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker
> > testcases.
> >
> > I already tried creating a global @Rule in  TestProcedureStoreTracker.java
> > class to no avail.
> >
> > mvn -X -Dtest=TestProcedureStoreTracker#testLoad test
> >
> > /==================/
> >   @Rule
> >   public Timeout globalTimeout = Timeout.seconds(900);
> > /==================/
> >
> > This was in addition to increasing surefire.timeout settings in pom.xml to
> > 9000.
> >
> > I was wondering if anyone can tell me where this 780 second timeout is set
> > and how can I increase it to a bigger value?
> >
> > Thanks in advance.
> >
> 

Re: TestProcedureStoreTracker - test timed out after 780 seconds

Posted by Stack <st...@duboce.net>.
See HBaseClassTestRule where it sets the general test timeout to a maximum
of 13 minutes.

We like to break up tests if they are running close to this upper bound.

Should we break up TestProcedureStoreTracker or cut down the number of
iterations we run in tests?

Thanks,
S

On Wed, Oct 16, 2019 at 9:35 AM Rishi Misra <ri...@gmail.com>
wrote:

> Hi there,
>
> I am trying to figure out how to extend the timeout beyond 780 seconds
> for org.apache.hadoop.hbase.procedure2.store.TestProcedureStoreTracker
> testcases.
>
> I already tried creating a global @Rule in  TestProcedureStoreTracker.java
> class to no avail.
>
> mvn -X -Dtest=TestProcedureStoreTracker#testLoad test
>
> /==================/
>   @Rule
>   public Timeout globalTimeout = Timeout.seconds(900);
> /==================/
>
> This was in addition to increasing surefire.timeout settings in pom.xml to
> 9000.
>
> I was wondering if anyone can tell me where this 780 second timeout is set
> and how can I increase it to a bigger value?
>
> Thanks in advance.
>