[ 
https://issues.apache.org/jira/browse/IGNITE-29239?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Dmitry Werner updated IGNITE-29239:
-----------------------------------
    Description: 
Success Rate: 65.7% (Last 108 Runs) 37 failed, 71 successful
[https://ci2.ignite.apache.org/test/-6897791433474634528?currentProjectId=IgniteTests24Java8&branch=%3Cdefault%3E]

TcpDiscoverySelfTest#testGetEffectiveNodeAddressesFiltersUnresolvedAddressWithoutNpe
 intermittently fails:
java.lang.AssertionError: Test node should have at least one unresolved address 
at TcpDiscoverySelfTest.java:2403

*Root cause*
The fixture creates the "unresolved" address via: new 
InetSocketAddress("unresolved-host-name-that-does-not-resolve-xyz", 47500).
This constructor performs a live DNS lookup; the address is unresolved 
(getAddress() == null) only if the lookup fails. On CI agents with 
wildcard/sinkhole DNS or search-domain resolution the bogus name may resolve, 
so the injected address is not unresolved and the assert fails. Resolver 
behavior is intermittent, hence the flakiness.

*Fix*
Use InetSocketAddress.createUnresolved(...) instead — deterministic, no DNS 
lookup, getAddress() is always null.

  was:
Success Rate: 65.7% (Last 108 Runs) {color:var(--ds-text, #172b4d)}37 failed, 
{color}71 successful
https://ci2.ignite.apache.org/test/-6897791433474634528?currentProjectId=IgniteTests24Java8&branch=%3Cdefault%3E

TcpDiscoverySelfTest#testGetEffectiveNodeAddressesFiltersUnresolvedAddressWithoutNpe
 intermittently fails:
java.lang.AssertionError: Test node should have at least one unresolved address 
at TcpDiscoverySelfTest.java:2403

*Root cause*
The fixture creates the "unresolved" address via: new 
InetSocketAddress("unresolved-host-name-that-does-not-resolve-xyz", 47500).
This constructor performs a live DNS lookup; the address is unresolved 
(getAddress() == null) only if the lookup fails. On CI agents with 
wildcard/sinkhole DNS or search-domain resolution the bogus name may resolve, 
so the injected address is not unresolved and the assert fails. Resolver 
behavior is intermittent, hence the flakiness.

*Fix*
Use InetSocketAddress.createUnresolved(...) instead — deterministic, no DNS 
lookup, getAddress() is always null.


> Fix flaky 
> TcpDiscoverySelfTest.testGetEffectiveNodeAddressesFiltersUnresolvedAddressWithoutNpe
> ----------------------------------------------------------------------------------------------
>
>                 Key: IGNITE-29239
>                 URL: https://issues.apache.org/jira/browse/IGNITE-29239
>             Project: Ignite
>          Issue Type: Bug
>            Reporter: Dmitry Werner
>            Assignee: Dmitry Werner
>            Priority: Minor
>              Labels: MakeTeamcityGreenAgain
>             Fix For: 2.20
>
>          Time Spent: 50m
>  Remaining Estimate: 0h
>
> Success Rate: 65.7% (Last 108 Runs) 37 failed, 71 successful
> [https://ci2.ignite.apache.org/test/-6897791433474634528?currentProjectId=IgniteTests24Java8&branch=%3Cdefault%3E]
> TcpDiscoverySelfTest#testGetEffectiveNodeAddressesFiltersUnresolvedAddressWithoutNpe
>  intermittently fails:
> java.lang.AssertionError: Test node should have at least one unresolved 
> address at TcpDiscoverySelfTest.java:2403
> *Root cause*
> The fixture creates the "unresolved" address via: new 
> InetSocketAddress("unresolved-host-name-that-does-not-resolve-xyz", 47500).
> This constructor performs a live DNS lookup; the address is unresolved 
> (getAddress() == null) only if the lookup fails. On CI agents with 
> wildcard/sinkhole DNS or search-domain resolution the bogus name may resolve, 
> so the injected address is not unresolved and the assert fails. Resolver 
> behavior is intermittent, hence the flakiness.
> *Fix*
> Use InetSocketAddress.createUnresolved(...) instead — deterministic, no DNS 
> lookup, getAddress() is always null.



--
This message was sent by Atlassian Jira
(v10.3.26#10030026)

Reply via email to