You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@ignite.apache.org by "Ignite TC Bot (Jira)" <ji...@apache.org> on 2021/11/22 08:06:00 UTC

[jira] [Commented] (IGNITE-15767) Need to workaround JDK bug JDK-8247750

    [ https://issues.apache.org/jira/browse/IGNITE-15767?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=17447238#comment-17447238 ] 

Ignite TC Bot commented on IGNITE-15767:
----------------------------------------

{panel:title=Branch: [pull/9498/head] Base: [master] : No blockers found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/9498/head] Base: [master] : New Tests (218)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#00008b}PDS 2{color} [[tests 30|https://ci.ignite.apache.org/viewLog.html?buildId=6280574]]
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReReadWhenStateWasNotStored[specificConsistentId=true, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testMultiNodeConsumption[specificConsistentId=true, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testCdcSingleton[specificConsistentId=true, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReadAllKeys[specificConsistentId=false, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReadAllKeys[specificConsistentId=true, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReadBeforeGracefulShutdown[specificConsistentId=true, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReadAllKeys[specificConsistentId=true, walMode=LOG_ONLY, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReadBeforeGracefulShutdown[specificConsistentId=true, walMode=LOG_ONLY, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReReadWhenStateWasNotStored[specificConsistentId=true, walMode=LOG_ONLY, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testMultiNodeConsumption[specificConsistentId=true, walMode=LOG_ONLY, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
* {color:#013220}IgnitePdsTestSuite2: CdcSelfTest.testReadBeforeGracefulShutdown[specificConsistentId=false, walMode=BACKGROUND, metricExporter=org.apache.ignite.cdc.CdcSelfTest$$Lambda$17/1408549350@dc4a691] - PASSED{color}
... and 19 new tests

{color:#00008b}Data Structures{color} [[tests 88|https://ci.ignite.apache.org/viewLog.html?buildId=6280550]]
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ReplicatedImplicitTransactionalReadRepairTest.test[getEntry=true, async=true] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: AtomicReadRepairTest.test[getEntry=false, async=false] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: AtomicReadRepairTest.test[getEntry=false, async=true] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: AtomicReadRepairTest.test[getEntry=true, async=false] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: AtomicReadRepairTest.test[getEntry=true, async=true] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ExplicitTransactionalReadRepairTest.test[concurrency=OPTIMISTIC, isolation=READ_COMMITTED, getEntry=false, async=false] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ExplicitTransactionalReadRepairTest.test[concurrency=OPTIMISTIC, isolation=READ_COMMITTED, getEntry=false, async=true] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ExplicitTransactionalReadRepairTest.test[concurrency=OPTIMISTIC, isolation=READ_COMMITTED, getEntry=true, async=false] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ExplicitTransactionalReadRepairTest.test[concurrency=OPTIMISTIC, isolation=READ_COMMITTED, getEntry=true, async=true] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ExplicitTransactionalReadRepairTest.test[concurrency=OPTIMISTIC, isolation=REPEATABLE_READ, getEntry=false, async=false] - PASSED{color}
* {color:#013220}IgniteCacheDataStructuresSelfTestSuite: ExplicitTransactionalReadRepairTest.test[concurrency=OPTIMISTIC, isolation=REPEATABLE_READ, getEntry=false, async=true] - PASSED{color}
... and 77 new tests

{color:#00008b}Index Query API{color} [[tests 100|https://ci.ignite.apache.org/viewLog.html?buildId=6280555]]
* {color:#013220}IndexQueryTestSuite: MultifieldIndexQueryTest.testLegalDifferentCriteria[nodesCnt=1 qryIdx=null] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: MultifieldIndexQueryTest.testLegalDifferentCriteria[nodesCnt=2 qryIdx=TEST_IDX] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: MultifieldIndexQueryTest.testLegalDifferentCriteria[nodesCnt=1 qryIdx=TEST_IDX] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: MultifieldIndexQueryTest.testLegalDifferentCriteria[nodesCnt=2 qryIdx=null] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeQueries[qryPar=1 atomicity=TRANSACTIONAL mode=REPLICATED node=CRD backups=0] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeDescQueriesWithDuplicatedData[qryPar=1 atomicity=TRANSACTIONAL mode=REPLICATED node=CRD backups=0] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeQueriesWithDuplicatedData[qryPar=1 atomicity=TRANSACTIONAL mode=REPLICATED node=CRD backups=0] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeDescQueries[qryPar=1 atomicity=TRANSACTIONAL mode=REPLICATED node=CRD backups=0] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeQueries[qryPar=1 atomicity=TRANSACTIONAL mode=PARTITIONED node=CLN backups=0] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeDescQueriesWithDuplicatedData[qryPar=1 atomicity=TRANSACTIONAL mode=PARTITIONED node=CLN backups=0] - PASSED{color}
* {color:#013220}IndexQueryTestSuite: IndexQueryRangeTest.testRangeQueriesWithDuplicatedData[qryPar=1 atomicity=TRANSACTIONAL mode=PARTITIONED node=CLN backups=0] - PASSED{color}
... and 89 new tests

{panel}
[TeamCity *--&gt; Run :: All* Results|https://ci.ignite.apache.org/viewLog.html?buildId=6280597&amp;buildTypeId=IgniteTests24Java8_RunAll]

> Need to workaround JDK bug JDK-8247750
> --------------------------------------
>
>                 Key: IGNITE-15767
>                 URL: https://issues.apache.org/jira/browse/IGNITE-15767
>             Project: Ignite
>          Issue Type: Improvement
>            Reporter: Ivan Bessonov
>            Assignee: Ivan Bessonov
>            Priority: Major
>             Fix For: 2.13
>
>          Time Spent: 10m
>  Remaining Estimate: 0h
>
> See [https://bugs.openjdk.java.net/browse/JDK-8247750]
> ServerSocket.accept() with no timeout may throw SocketTimeoutException when the process receives a signal. It can cause unexpected exception in the disco reader:
> {noformat}
> [09:52:26,301][SEVERE][tcp-disco-srvr-[:47500]-#3-#71][TcpDiscoverySpi] Failed to accept TCP connection.
> java.net.SocketTimeoutException: Accept timed out at java.base/java.net.PlainSocketImpl.socketAccept(Native Method)
>  at java.base/java.net.AbstractPlainSocketImpl.accept(AbstractPlainSocketImpl.java:458)
>  at java.base/java.net.ServerSocket.implAccept(ServerSocket.java:565)
>  at java.base/java.net.ServerSocket.accept(ServerSocket.java:533)
>  at org.apache.ignite.spi.discovery.tcp.ServerImpl$TcpServer.body(ServerImpl.java:6750)
>  at org.apache.ignite.internal.util.worker.GridWorker.run(GridWorker.java:119)
>  at org.apache.ignite.spi.discovery.tcp.ServerImpl$TcpServerThread.body(ServerImpl.java:6673)
>  at org.apache.ignite.spi.IgniteSpiThread.run(IgniteSpiThread.java:57){noformat}
> There are mentions of this on StackOverflow and userlist, and we also see it when running Docker on Alpine 3.15. Speculation is that this is caused by a combination of a specific version of Linux kernel and environment.
> Sidenote: based on strace analysis on Alpine, it doesn't even receive any signals; it could be so that Alpine interrupts the syscall "as if" by a signal.
> The bug is not fixed in JDK 11 (surprisingly). WA is easy though - wrap the accept in try-catch, and retry if getting the unexpected timeout exception.



--
This message was sent by Atlassian Jira
(v8.20.1#820001)