[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-07-24 Thread Aleksey Plekhanov (Jira)


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

Aleksey Plekhanov commented on IGNITE-12438:


Cherrry-picked to 2.9

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 1h 10m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-07-10 Thread Aleksey Plekhanov (Jira)


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

Aleksey Plekhanov commented on IGNITE-12438:


[~agoncharuk], "Fix version" for this ticket is 2.9, but the patch is not 
cherry-picked to 2.9 branch. Do you have plans to cherry-pick it? 

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-07-09 Thread Alexey Goncharuk (Jira)


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

Alexey Goncharuk commented on IGNITE-12438:
---

Merged to master.

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 50m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-07-09 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-12438:


{panel:title=Branch: [pull/7639/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
{panel:title=Branch: [pull/7639/head] Base: [master] : New Tests 
(15)|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}
{color:#8b}SPI{color} [tests 6]
* {color:#013220}IgniteSpiTestSuite: 
GridTcpCommunicationInverseConnectionEstablishingTest.testClientSkipsInverseConnectionResponse
 - PASSED{color}
* {color:#013220}IgniteSpiTestSuite: 
GridTcpCommunicationInverseConnectionEstablishingTest.testUnreachableClientInVirtualizedEnvironment
 - PASSED{color}
* {color:#013220}IgniteSpiTestSuite: 
GridTcpCommunicationInverseConnectionEstablishingTest.testClientWithUnresolvableHostInStandAloneEnvironment
 - PASSED{color}
* {color:#013220}IgniteSpiTestSuite: 
GridTcpCommunicationInverseConnectionEstablishingTest.testClientReconnectDuringInverseConnection
 - PASSED{color}
* {color:#013220}IgniteSpiTestSuite: 
GridTcpCommunicationInverseConnectionEstablishingTest.testClientWithUnresolvableHostInVirtualizedEnvironment
 - PASSED{color}
* {color:#013220}IgniteSpiTestSuite: 
GridTcpCommunicationInverseConnectionEstablishingTest.testUnreachableClientInStandAloneEnvironment
 - PASSED{color}

{color:#8b}Service Grid{color} [tests 4]
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.topologyVersion[Test event=IgniteBiTuple 
[val1=DiscoveryCustomEvent [customMsg=ServiceChangeBatchRequest 
[id=5b6358e2371-985c5ba9-ec90-4eb7-847a-e30b8fd39f28, reqs=SingletonList 
[ServiceUndeploymentRequest []]], affTopVer=null, super=DiscoveryEvent 
[evtNode=67fc01f6-9ff5-41d3-bd57-02601835372d, topVer=0, nodeId8=67fc01f6, 
msg=null, type=DISCOVERY_CUSTOM_EVT, tstamp=1594213349041]], 
val2=AffinityTopologyVersion [topVer=4920988174019263936, minorTopVer=0]]] - 
PASSED{color}
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.requestId[Test event=IgniteBiTuple 
[val1=DiscoveryCustomEvent [customMsg=ServiceChangeBatchRequest 
[id=5b6358e2371-985c5ba9-ec90-4eb7-847a-e30b8fd39f28, reqs=SingletonList 
[ServiceUndeploymentRequest []]], affTopVer=null, super=DiscoveryEvent 
[evtNode=67fc01f6-9ff5-41d3-bd57-02601835372d, topVer=0, nodeId8=67fc01f6, 
msg=null, type=DISCOVERY_CUSTOM_EVT, tstamp=1594213349041]], 
val2=AffinityTopologyVersion [topVer=4920988174019263936, minorTopVer=0]]] - 
PASSED{color}
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.topologyVersion[Test event=IgniteBiTuple 
[val1=DiscoveryEvent [evtNode=b4c13c60-8074-4299-938a-9223d0d8e82c, topVer=0, 
nodeId8=f2e421ba, msg=, type=NODE_JOINED, tstamp=1594213349041], 
val2=AffinityTopologyVersion [topVer=-9093954929986358400, minorTopVer=0]]] - 
PASSED{color}
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.requestId[Test event=IgniteBiTuple 
[val1=DiscoveryEvent [evtNode=b4c13c60-8074-4299-938a-9223d0d8e82c, topVer=0, 
nodeId8=f2e421ba, msg=, type=NODE_JOINED, tstamp=1594213349041], 
val2=AffinityTopologyVersion [topVer=-9093954929986358400, minorTopVer=0]]] - 
PASSED{color}

{color:#8b}Service Grid (legacy mode){color} [tests 4]
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.requestId[Test event=IgniteBiTuple 
[val1=DiscoveryCustomEvent [customMsg=ServiceChangeBatchRequest 
[id=b17df8e2371-b6790362-a7d9-457e-ab95-1bb25562a9b7, reqs=SingletonList 
[ServiceUndeploymentRequest []]], affTopVer=null, super=DiscoveryEvent 
[evtNode=0a4e0b71-a10e-4470-9662-1a0209621de6, topVer=0, nodeId8=0a4e0b71, 
msg=null, type=DISCOVERY_CUSTOM_EVT, tstamp=1594213405163]], 
val2=AffinityTopologyVersion [topVer=3754191324757738430, minorTopVer=0]]] - 
PASSED{color}
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.topologyVersion[Test event=IgniteBiTuple 
[val1=DiscoveryEvent [evtNode=1e17a88e-6bca-4a4c-b5ad-d70eb2045e4b, topVer=0, 
nodeId8=52ece4c4, msg=, type=NODE_JOINED, tstamp=1594213405163], 
val2=AffinityTopologyVersion [topVer=1476063837119227615, minorTopVer=0]]] - 
PASSED{color}
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.requestId[Test event=IgniteBiTuple 
[val1=DiscoveryEvent [evtNode=1e17a88e-6bca-4a4c-b5ad-d70eb2045e4b, topVer=0, 
nodeId8=52ece4c4, msg=, type=NODE_JOINED, tstamp=1594213405163], 
val2=AffinityTopologyVersion [topVer=1476063837119227615, minorTopVer=0]]] - 
PASSED{color}
* {color:#013220}IgniteServiceGridTestSuite: 
ServiceDeploymentProcessIdSelfTest.topologyVersion[Test event=IgniteBiTuple 
[val1=DiscoveryCustomEvent [customMsg=ServiceChangeBatchRequest 
[id=b17df8e2371-b6790362-a7d9-457e-ab95-1bb25562a9b7, reqs=SingletonList 
[ServiceUndeploymentRequest []]], 

[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-07-03 Thread Sergey Chugunov (Jira)


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

Sergey Chugunov commented on IGNITE-12438:
--

[~ibessonov],

I reviewed your changes, they look good to me. Do we have a fresh green visa 
for the latest version of code? When visa is obtained we'll be ready to merge 
the patch to master branch.

Thanks!

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-05-15 Thread Denis A. Magda (Jira)


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

Denis A. Magda commented on IGNITE-12438:
-

Ivan, thank you!

As this task's description suggests, a server will try to connect to a client 
anyway through communication SPI before requesting the client (via a discovery 
message) to establish a connection with the server instead. It means that the 
client should create a server socket even for EnvironmentType.VIRTUALIZED. At 
least that was my understanding. The issue described in 
[IGNITE-13013|https://issues.apache.org/jira/browse/IGNITE-13013] is about the 
cases when the server must not even try to connect to the client and the client 
must not open the server socket. Actually, that's the case for this bullet item 
of this ticket_ (Optionally) detect when a client has only one-way connectivity 
with the server nodes. This part should be investigated. We need this to avoid 
server nodes attempt to connect to a client and send communication request to 
the client node faster_

I'll leave it up to you, you can close IGNITE-13013 and fix the issue as part 
of this task. Or you can IGNITE-13013 as a sub-task and track those cases 
separately.


> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-05-15 Thread Ivan Bessonov (Jira)


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

Ivan Bessonov commented on IGNITE-12438:


Hi [~dmagda],

I'll start the discussion soon. Feature is in experimental state in the code 
because it's still not clear how good this concept will be.

BTW, IGNITE-13013 isn't too clear for me - is it any different from the current 
task? Both require the same thing - providing the ability to have one-way 
connection from clients to servers, right?

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-05-14 Thread Denis A. Magda (Jira)


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

Denis A. Magda commented on IGNITE-12438:
-

[~ibessonov], could you please start a discussion on the dev list to discuss 
this new API? I'm not sure that 'VIRTUALIZED' is the best name for the feature. 
Let's quickly brainstorm with a broader community.


{code:java}
public enum EnvironmentType {
 /** Default value. */
 STANDALONE,

 /** */
 VIRTUALIZED;
 }
{code}

Also, I see that the feature is planned to be released in the experimental 
mode. What needs to be done to make it available in the GA state?

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
> Fix For: 2.9
>
>  Time Spent: 40m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)


[jira] [Commented] (IGNITE-12438) Extend communication protocol to establish client-server connection

2020-04-09 Thread Ignite TC Bot (Jira)


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

Ignite TC Bot commented on IGNITE-12438:


{panel:title=Branch: [pull/7639/head] Base: [master] : No blockers 
found!|borderStyle=dashed|borderColor=#ccc|titleBGColor=#D6F7C1}{panel}
[TeamCity *-- Run :: All* 
Results|https://ci.ignite.apache.org/viewLog.html?buildId=5201750buildTypeId=IgniteTests24Java8_RunAll]

> Extend communication protocol to establish client-server connection
> ---
>
> Key: IGNITE-12438
> URL: https://issues.apache.org/jira/browse/IGNITE-12438
> Project: Ignite
>  Issue Type: Improvement
>Reporter: Alexey Goncharuk
>Assignee: Ivan Bessonov
>Priority: Major
>  Time Spent: 10m
>  Remaining Estimate: 0h
>
> Recently there was quite a lot of questions related to thick clients 
> connectivity issues when the clients are deployed in a k8s pod [1]. The 
> general issue here is clients reporting network address which are not 
> reachable from server nodes. At the same time, the clients can connect to 
> server nodes.
> An idea of how to fix this is as follows:
>  * Make sure that think clients discovery SPI always maintains a connection 
> to a server node (this should be already implemented)
>  * (Optionally) detect when a client has only one-way connectivity with the 
> server nodes. This part should be investigated. We need this to avoid server 
> nodes attempt to connect to a client and send communication request to the 
> client node faster
>  * When a server attempts to establish a connection with a client, check if 
> client is unreachable or the previous connection attempt failed. If so, send 
> a discovery message to the client to force a client-server connection. In 
> this case, server will be able to send the original message via the newly 
> established connection.
> [1] 
> https://stackoverflow.com/questions/59192075/ignite-communicationspi-questions-in-paas-environment/59232504



--
This message was sent by Atlassian Jira
(v8.3.4#803005)