Uploaded image for project: 'Hadoop Common'
  1. Hadoop Common
  2. HADOOP-13512

ReloadingX509TrustManager should keep reloading in case of exception

    Details

    • Type: Bug
    • Status: Resolved
    • Priority: Critical
    • Resolution: Fixed
    • Affects Version/s: None
    • Fix Version/s: 2.8.0, 2.7.4, 3.0.0-alpha1
    • Component/s: security
    • Labels:
      None
    • Target Version/s:
    • Hadoop Flags:
      Reviewed

      Description

      org.apache.hadoop.security.ssl.TestReloadingX509TrustManager checks the key store file's last modified time to decide whether to reload. This is to avoid unnecessary reload if the key store file is not changed. To do this, it maintains an internal state lastLoaded whenever it tries to reload a file. It also updates the lastLoaded variable in case of exception so failing reload will not be retried until the key store file's last modified time changes again.

      Chances are that the reload happens when the key store file is being written. The reload fails (probably with EOFException) and won't load until key store files's last modified time changes. After a short period, the key store file is closed after update. However, the last modified time may not be updated as if it's in the same precision period (e.g. 1 second). In this case, the updated key store file is never reloaded.

      A simple fix is to update the lastLoaded only when the reload succeeds. ReloadingX509TrustManager will keep reloading in case of exception.

      Thoughts?

        Activity

        Hide
        liuml07 Mingliang Liu added a comment - - edited

        https://builds.apache.org/job/PreCommit-HADOOP-Build/10251/testReport/org.apache.hadoop.security.ssl/TestReloadingX509TrustManager/testReload/ is a potential UT failure because of this.

        Error Message
        Timed out waiting for condition. Thread diagnostics:
        Timestamp: 2016-08-15 07:00:59,364
        
        "Reference Handler" daemon prio=10 tid=2 in Object.wait()
        java.lang.Thread.State: WAITING (on object monitor)
                at java.lang.Object.wait(Native Method)
                at java.lang.Object.wait(Object.java:502)
                at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
                at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)
        "Truststore reloader thread" daemon prio=5 tid=21 timed_waiting
        java.lang.Thread.State: TIMED_WAITING
                at java.lang.Thread.sleep(Native Method)
                at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:194)
                at java.lang.Thread.run(Thread.java:745)
        "Signal Dispatcher" daemon prio=9 tid=4 runnable
        java.lang.Thread.State: RUNNABLE
        "Thread-1"  prio=5 tid=20 runnable
        java.lang.Thread.State: RUNNABLE
                at java.lang.Thread.dumpThreads(Native Method)
                at java.lang.Thread.getAllStackTraces(Thread.java:1603)
                at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDump(TimedOutTestsListener.java:87)
                at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDiagnosticString(TimedOutTestsListener.java:73)
                at org.apache.hadoop.test.GenericTestUtils.waitFor(GenericTestUtils.java:271)
                at org.apache.hadoop.security.ssl.TestReloadingX509TrustManager.testReload(TestReloadingX509TrustManager.java:114)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
                at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
                at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
                at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
                at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
        "Finalizer" daemon prio=8 tid=3 in Object.wait()
        java.lang.Thread.State: WAITING (on object monitor)
                at java.lang.Object.wait(Native Method)
                at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
                at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
                at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)
        "main"  prio=5 tid=1 timed_waiting
        java.lang.Thread.State: TIMED_WAITING
                at java.lang.Object.wait(Native Method)
                at java.lang.Thread.join(Thread.java:1253)
                at org.junit.internal.runners.statements.FailOnTimeout.evaluateStatement(FailOnTimeout.java:26)
                at org.junit.internal.runners.statements.FailOnTimeout.evaluate(FailOnTimeout.java:17)
                at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
                at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
                at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
                at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
                at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
                at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
                at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
                at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
                at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
                at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
                at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
                at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
                at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
                at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
                at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
                at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
        
        Stacktrace
        java.util.concurrent.TimeoutException: Timed out waiting for condition. Thread diagnostics:
        Timestamp: 2016-08-15 07:00:59,364
        
        "Reference Handler" daemon prio=10 tid=2 in Object.wait()
        java.lang.Thread.State: WAITING (on object monitor)
                at java.lang.Object.wait(Native Method)
                at java.lang.Object.wait(Object.java:502)
                at java.lang.ref.Reference.tryHandlePending(Reference.java:191)
                at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153)
        "Truststore reloader thread" daemon prio=5 tid=21 timed_waiting
        java.lang.Thread.State: TIMED_WAITING
                at java.lang.Thread.sleep(Native Method)
                at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:194)
                at java.lang.Thread.run(Thread.java:745)
        "Signal Dispatcher" daemon prio=9 tid=4 runnable
        java.lang.Thread.State: RUNNABLE
        "Thread-1"  prio=5 tid=20 runnable
        java.lang.Thread.State: RUNNABLE
                at java.lang.Thread.dumpThreads(Native Method)
                at java.lang.Thread.getAllStackTraces(Thread.java:1603)
                at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDump(TimedOutTestsListener.java:87)
                at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDiagnosticString(TimedOutTestsListener.java:73)
                at org.apache.hadoop.test.GenericTestUtils.waitFor(GenericTestUtils.java:271)
                at org.apache.hadoop.security.ssl.TestReloadingX509TrustManager.testReload(TestReloadingX509TrustManager.java:114)
                at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
                at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62)
                at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
                at java.lang.reflect.Method.invoke(Method.java:498)
                at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47)
                at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12)
                at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44)
                at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17)
                at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74)
        "Finalizer" daemon prio=8 tid=3 in Object.wait()
        java.lang.Thread.State: WAITING (on object monitor)
                at java.lang.Object.wait(Native Method)
                at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143)
                at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164)
                at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209)
        "main"  prio=5 tid=1 timed_waiting
        java.lang.Thread.State: TIMED_WAITING
                at java.lang.Object.wait(Native Method)
                at java.lang.Thread.join(Thread.java:1253)
                at org.junit.internal.runners.statements.FailOnTimeout.evaluateStatement(FailOnTimeout.java:26)
                at org.junit.internal.runners.statements.FailOnTimeout.evaluate(FailOnTimeout.java:17)
                at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271)
                at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70)
                at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50)
                at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238)
                at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63)
                at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236)
                at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53)
                at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229)
                at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26)
                at org.junit.runners.ParentRunner.run(ParentRunner.java:309)
                at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264)
                at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153)
                at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124)
                at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200)
                at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153)
                at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103)
        
        
        	at org.apache.hadoop.test.GenericTestUtils.waitFor(GenericTestUtils.java:271)
        	at org.apache.hadoop.security.ssl.TestReloadingX509TrustManager.testReload(TestReloadingX509TrustManager.java:114)
        
        Standard Output
        2016-08-15 19:00:49,354 WARN  ssl.ReloadingX509TrustManager (ReloadingX509TrustManager.java:run(202)) - Could not load truststore (keep using existing one) : java.io.EOFException
        java.io.EOFException
        	at java.io.DataInputStream.readUnsignedShort(DataInputStream.java:340)
        	at java.io.DataInputStream.readUTF(DataInputStream.java:589)
        	at java.io.DataInputStream.readUTF(DataInputStream.java:564)
        	at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:741)
        	at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:56)
        	at sun.security.provider.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:224)
        	at sun.security.provider.JavaKeyStore$DualFormatJKS.engineLoad(JavaKeyStore.java:70)
        	at java.security.KeyStore.load(KeyStore.java:1445)
        	at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.loadTrustManager(ReloadingX509TrustManager.java:171)
        	at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:200)
        	at java.lang.Thread.run(Thread.java:745)
        
        Show
        liuml07 Mingliang Liu added a comment - - edited https://builds.apache.org/job/PreCommit-HADOOP-Build/10251/testReport/org.apache.hadoop.security.ssl/TestReloadingX509TrustManager/testReload/ is a potential UT failure because of this. Error Message Timed out waiting for condition. Thread diagnostics: Timestamp: 2016-08-15 07:00:59,364 "Reference Handler" daemon prio=10 tid=2 in Object .wait() java.lang. Thread .State: WAITING (on object monitor) at java.lang. Object .wait(Native Method) at java.lang. Object .wait( Object .java:502) at java.lang.ref.Reference.tryHandlePending(Reference.java:191) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153) "Truststore reloader thread" daemon prio=5 tid=21 timed_waiting java.lang. Thread .State: TIMED_WAITING at java.lang. Thread .sleep(Native Method) at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:194) at java.lang. Thread .run( Thread .java:745) "Signal Dispatcher" daemon prio=9 tid=4 runnable java.lang. Thread .State: RUNNABLE " Thread -1" prio=5 tid=20 runnable java.lang. Thread .State: RUNNABLE at java.lang. Thread .dumpThreads(Native Method) at java.lang. Thread .getAllStackTraces( Thread .java:1603) at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDump(TimedOutTestsListener.java:87) at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDiagnosticString(TimedOutTestsListener.java:73) at org.apache.hadoop.test.GenericTestUtils.waitFor(GenericTestUtils.java:271) at org.apache.hadoop.security.ssl.TestReloadingX509TrustManager.testReload(TestReloadingX509TrustManager.java:114) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74) "Finalizer" daemon prio=8 tid=3 in Object .wait() java.lang. Thread .State: WAITING (on object monitor) at java.lang. Object .wait(Native Method) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) "main" prio=5 tid=1 timed_waiting java.lang. Thread .State: TIMED_WAITING at java.lang. Object .wait(Native Method) at java.lang. Thread .join( Thread .java:1253) at org.junit.internal.runners.statements.FailOnTimeout.evaluateStatement(FailOnTimeout.java:26) at org.junit.internal.runners.statements.FailOnTimeout.evaluate(FailOnTimeout.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) Stacktrace java.util.concurrent.TimeoutException: Timed out waiting for condition. Thread diagnostics: Timestamp: 2016-08-15 07:00:59,364 "Reference Handler" daemon prio=10 tid=2 in Object .wait() java.lang. Thread .State: WAITING (on object monitor) at java.lang. Object .wait(Native Method) at java.lang. Object .wait( Object .java:502) at java.lang.ref.Reference.tryHandlePending(Reference.java:191) at java.lang.ref.Reference$ReferenceHandler.run(Reference.java:153) "Truststore reloader thread" daemon prio=5 tid=21 timed_waiting java.lang. Thread .State: TIMED_WAITING at java.lang. Thread .sleep(Native Method) at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:194) at java.lang. Thread .run( Thread .java:745) "Signal Dispatcher" daemon prio=9 tid=4 runnable java.lang. Thread .State: RUNNABLE " Thread -1" prio=5 tid=20 runnable java.lang. Thread .State: RUNNABLE at java.lang. Thread .dumpThreads(Native Method) at java.lang. Thread .getAllStackTraces( Thread .java:1603) at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDump(TimedOutTestsListener.java:87) at org.apache.hadoop.test.TimedOutTestsListener.buildThreadDiagnosticString(TimedOutTestsListener.java:73) at org.apache.hadoop.test.GenericTestUtils.waitFor(GenericTestUtils.java:271) at org.apache.hadoop.security.ssl.TestReloadingX509TrustManager.testReload(TestReloadingX509TrustManager.java:114) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:62) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:498) at org.junit.runners.model.FrameworkMethod$1.runReflectiveCall(FrameworkMethod.java:47) at org.junit.internal.runners.model.ReflectiveCallable.run(ReflectiveCallable.java:12) at org.junit.runners.model.FrameworkMethod.invokeExplosively(FrameworkMethod.java:44) at org.junit.internal.runners.statements.InvokeMethod.evaluate(InvokeMethod.java:17) at org.junit.internal.runners.statements.FailOnTimeout$StatementThread.run(FailOnTimeout.java:74) "Finalizer" daemon prio=8 tid=3 in Object .wait() java.lang. Thread .State: WAITING (on object monitor) at java.lang. Object .wait(Native Method) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:143) at java.lang.ref.ReferenceQueue.remove(ReferenceQueue.java:164) at java.lang.ref.Finalizer$FinalizerThread.run(Finalizer.java:209) "main" prio=5 tid=1 timed_waiting java.lang. Thread .State: TIMED_WAITING at java.lang. Object .wait(Native Method) at java.lang. Thread .join( Thread .java:1253) at org.junit.internal.runners.statements.FailOnTimeout.evaluateStatement(FailOnTimeout.java:26) at org.junit.internal.runners.statements.FailOnTimeout.evaluate(FailOnTimeout.java:17) at org.junit.runners.ParentRunner.runLeaf(ParentRunner.java:271) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:70) at org.junit.runners.BlockJUnit4ClassRunner.runChild(BlockJUnit4ClassRunner.java:50) at org.junit.runners.ParentRunner$3.run(ParentRunner.java:238) at org.junit.runners.ParentRunner$1.schedule(ParentRunner.java:63) at org.junit.runners.ParentRunner.runChildren(ParentRunner.java:236) at org.junit.runners.ParentRunner.access$000(ParentRunner.java:53) at org.junit.runners.ParentRunner$2.evaluate(ParentRunner.java:229) at org.junit.internal.runners.statements.RunBefores.evaluate(RunBefores.java:26) at org.junit.runners.ParentRunner.run(ParentRunner.java:309) at org.apache.maven.surefire.junit4.JUnit4Provider.execute(JUnit4Provider.java:264) at org.apache.maven.surefire.junit4.JUnit4Provider.executeTestSet(JUnit4Provider.java:153) at org.apache.maven.surefire.junit4.JUnit4Provider.invoke(JUnit4Provider.java:124) at org.apache.maven.surefire.booter.ForkedBooter.invokeProviderInSameClassLoader(ForkedBooter.java:200) at org.apache.maven.surefire.booter.ForkedBooter.runSuitesInProcess(ForkedBooter.java:153) at org.apache.maven.surefire.booter.ForkedBooter.main(ForkedBooter.java:103) at org.apache.hadoop.test.GenericTestUtils.waitFor(GenericTestUtils.java:271) at org.apache.hadoop.security.ssl.TestReloadingX509TrustManager.testReload(TestReloadingX509TrustManager.java:114) Standard Output 2016-08-15 19:00:49,354 WARN ssl.ReloadingX509TrustManager (ReloadingX509TrustManager.java:run(202)) - Could not load truststore (keep using existing one) : java.io.EOFException java.io.EOFException at java.io.DataInputStream.readUnsignedShort(DataInputStream.java:340) at java.io.DataInputStream.readUTF(DataInputStream.java:589) at java.io.DataInputStream.readUTF(DataInputStream.java:564) at sun.security.provider.JavaKeyStore.engineLoad(JavaKeyStore.java:741) at sun.security.provider.JavaKeyStore$JKS.engineLoad(JavaKeyStore.java:56) at sun.security.provider.KeyStoreDelegator.engineLoad(KeyStoreDelegator.java:224) at sun.security.provider.JavaKeyStore$DualFormatJKS.engineLoad(JavaKeyStore.java:70) at java.security.KeyStore.load(KeyStore.java:1445) at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.loadTrustManager(ReloadingX509TrustManager.java:171) at org.apache.hadoop.security.ssl.ReloadingX509TrustManager.run(ReloadingX509TrustManager.java:200) at java.lang. Thread .run( Thread .java:745)
        Hide
        hadoopqa Hadoop QA added a comment -
        -1 overall



        Vote Subsystem Runtime Comment
        0 reexec 0m 17s Docker mode activated.
        +1 @author 0m 0s The patch does not contain any @author tags.
        -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch.
        +1 mvninstall 6m 55s trunk passed
        +1 compile 6m 53s trunk passed
        +1 checkstyle 0m 23s trunk passed
        +1 mvnsite 0m 53s trunk passed
        +1 mvneclipse 0m 12s trunk passed
        +1 findbugs 1m 21s trunk passed
        +1 javadoc 0m 46s trunk passed
        +1 mvninstall 0m 38s the patch passed
        +1 compile 6m 47s the patch passed
        +1 javac 6m 47s the patch passed
        +1 checkstyle 0m 23s the patch passed
        +1 mvnsite 0m 52s the patch passed
        +1 mvneclipse 0m 13s the patch passed
        +1 whitespace 0m 0s The patch has no whitespace issues.
        +1 findbugs 1m 29s the patch passed
        +1 javadoc 0m 45s the patch passed
        +1 unit 7m 48s hadoop-common in the patch passed.
        +1 asflicense 0m 21s The patch does not generate ASF License warnings.
        38m 20s



        Subsystem Report/Notes
        Docker Image:yetus/hadoop:9560f25
        JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824295/HADOOP-13512.000.patch
        JIRA Issue HADOOP-13512
        Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle
        uname Linux 1e17ccb62fd5 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
        Build tool maven
        Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh
        git revision trunk / 913a895
        Default Java 1.8.0_101
        findbugs v3.0.0
        Test Results https://builds.apache.org/job/PreCommit-HADOOP-Build/10294/testReport/
        modules C: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common
        Console output https://builds.apache.org/job/PreCommit-HADOOP-Build/10294/console
        Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org

        This message was automatically generated.

        Show
        hadoopqa Hadoop QA added a comment - -1 overall Vote Subsystem Runtime Comment 0 reexec 0m 17s Docker mode activated. +1 @author 0m 0s The patch does not contain any @author tags. -1 test4tests 0m 0s The patch doesn't appear to include any new or modified tests. Please justify why no new tests are needed for this patch. Also please list what manual steps were performed to verify this patch. +1 mvninstall 6m 55s trunk passed +1 compile 6m 53s trunk passed +1 checkstyle 0m 23s trunk passed +1 mvnsite 0m 53s trunk passed +1 mvneclipse 0m 12s trunk passed +1 findbugs 1m 21s trunk passed +1 javadoc 0m 46s trunk passed +1 mvninstall 0m 38s the patch passed +1 compile 6m 47s the patch passed +1 javac 6m 47s the patch passed +1 checkstyle 0m 23s the patch passed +1 mvnsite 0m 52s the patch passed +1 mvneclipse 0m 13s the patch passed +1 whitespace 0m 0s The patch has no whitespace issues. +1 findbugs 1m 29s the patch passed +1 javadoc 0m 45s the patch passed +1 unit 7m 48s hadoop-common in the patch passed. +1 asflicense 0m 21s The patch does not generate ASF License warnings. 38m 20s Subsystem Report/Notes Docker Image:yetus/hadoop:9560f25 JIRA Patch URL https://issues.apache.org/jira/secure/attachment/12824295/HADOOP-13512.000.patch JIRA Issue HADOOP-13512 Optional Tests asflicense compile javac javadoc mvninstall mvnsite unit findbugs checkstyle uname Linux 1e17ccb62fd5 3.13.0-36-lowlatency #63-Ubuntu SMP PREEMPT Wed Sep 3 21:56:12 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux Build tool maven Personality /testptch/hadoop/patchprocess/precommit/personality/provided.sh git revision trunk / 913a895 Default Java 1.8.0_101 findbugs v3.0.0 Test Results https://builds.apache.org/job/PreCommit-HADOOP-Build/10294/testReport/ modules C: hadoop-common-project/hadoop-common U: hadoop-common-project/hadoop-common Console output https://builds.apache.org/job/PreCommit-HADOOP-Build/10294/console Powered by Apache Yetus 0.4.0-SNAPSHOT http://yetus.apache.org This message was automatically generated.
        Hide
        jnp Jitendra Nath Pandey added a comment -

        Its a good catch.
        +1

        Show
        jnp Jitendra Nath Pandey added a comment - Its a good catch. +1
        Hide
        liuml07 Mingliang Liu added a comment -

        Thanks Jitendra Nath Pandey for reviewing the patch. It contains no dedicated UT because it's covered by existing TestReloadingX509TrustManager. I've committed this to trunk through branch-2.7.

        Show
        liuml07 Mingliang Liu added a comment - Thanks Jitendra Nath Pandey for reviewing the patch. It contains no dedicated UT because it's covered by existing TestReloadingX509TrustManager . I've committed this to trunk through branch-2.7 .
        Hide
        hudson Hudson added a comment -

        SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10302 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10302/)
        HADOOP-13512. ReloadingX509TrustManager should keep reloading in case of (liuml07: rev 0f51eae0c085ded38216824377acf8122638c3a5)

        • (edit) hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/ssl/ReloadingX509TrustManager.java
        Show
        hudson Hudson added a comment - SUCCESS: Integrated in Jenkins build Hadoop-trunk-Commit #10302 (See https://builds.apache.org/job/Hadoop-trunk-Commit/10302/ ) HADOOP-13512 . ReloadingX509TrustManager should keep reloading in case of (liuml07: rev 0f51eae0c085ded38216824377acf8122638c3a5) (edit) hadoop-common-project/hadoop-common/src/main/java/org/apache/hadoop/security/ssl/ReloadingX509TrustManager.java

          People

          • Assignee:
            liuml07 Mingliang Liu
            Reporter:
            liuml07 Mingliang Liu
          • Votes:
            0 Vote for this issue
            Watchers:
            4 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development