celeborn/common
Mridul Muralidharan 21d5698a90 [CELEBORN-1339] Mark connection as timedOut in TransportClient.close
### What changes were proposed in this pull request?

Importing details from https://github.com/apache/spark/pull/43162:

--
This PR avoids a race condition where a connection which is in the process of being closed could be returned by the TransportClientFactory only to be immediately closed and cause errors upon use.

This race condition is rare and not easily triggered, but with the upcoming changes to introduce SSL connection support, connection closing can take just a slight bit longer and it's much easier to trigger this issue.

Looking at the history of the code I believe this was an oversight in https://github.com/apache/spark/pull/9853.

--

### Why are the changes needed?

We are working towards adding TLS support, which is essentially based on Spark 4.0 TLS support, and this is one of the fixes from there.
(I am yet to file the overall TLS support jira yet, but this is enabling work).

### Does this PR introduce _any_ user-facing change?

No

### How was this patch tested?

Unit tests

Closes #2400 from mridulm/add-SPARK-45375.

Authored-by: Mridul Muralidharan <mridulatgmail.com>
Signed-off-by: SteNicholas <programgeek@163.com>
2024-03-20 08:50:14 +08:00
..
benchmarks
src [CELEBORN-1339] Mark connection as timedOut in TransportClient.close 2024-03-20 08:50:14 +08:00
pom.xml [CELEBORN-1170] Upgrade snappy-java from 1.1.8.2 to 1.1.10.5 2023-12-14 22:28:32 +08:00