[SERVER-40156] Initial implementation of Split Horizon Created: 15/Mar/19  Updated: 29/Oct/23  Resolved: 17/May/19

Status: Closed
Project: Core Server
Component/s: None
Affects Version/s: None
Fix Version/s: 3.6.14, 4.1.12, 4.0.11

Type: Improvement Priority: Major - P3
Reporter: ADAM Martin (Inactive) Assignee: ADAM Martin (Inactive)
Resolution: Fixed Votes: 0
Labels: None
Remaining Estimate: Not Specified
Time Spent: Not Specified
Original Estimate: Not Specified

Issue Links:
Backports
backports SERVER-25438 Make isMaster return no hosts when no... Closed
Documented
is documented by DOCS-12714 Docs for SERVER-40156: Initial implem... Closed
Duplicate
is duplicated by SERVER-40157 Add support for SNI/`simulatedSNI` to... Closed
Gantt End to End
has to be finished together with SERVER-40157 Add support for SNI/`simulatedSNI` to... Closed
Backwards Compatibility: Minor Change
Backport Requested:
v4.0, v3.6
Sprint: Dev Tools 2019-03-25, Dev Tools 2019-04-08, Dev Tools 2019-05-06, Dev Tools 2019-05-20, Dev Tools 2019-04-22
Participants:
Case:

 Description   

Refine and land the PoC that was used to answer questions during the design phase.



 Comments   
Comment by Githook User [ 07/Jun/19 ]

Author:

{'name': 'ADAM David Alan Martin', 'email': 'adam.martin@10gen.com', 'username': 'adamlsd'}

Message: SERVER-40156 Replica sets support Split Horizons

Replica sets can now respond to `isMaster` requests with
different hostnames and ports, if contacted via alternate
names using TLS. The `horizons` field in replica set
member configurations can be used to control which
`HostAndPort` to reply with for which "horizon view" of
a replica set.

(cherry picked from commit 6d6d54c9d638dad00f51a6640a696554c0e8675b)

Conflicts:
src/mongo/db/auth/authorization_manager_test.cpp
src/mongo/db/repl/SConscript
src/mongo/db/repl/replication_info.cpp
src/mongo/db/repl/topology_coordinator.h
src/mongo/embedded/replication_coordinator_embedded.cpp
src/mongo/embedded/replication_coordinator_embedded.h
src/mongo/logger/max_log_size.cpp
src/mongo/transport/session_asio.h
src/mongo/util/net/ssl_manager.h
src/mongo/util/net/ssl_manager_apple.cpp
src/mongo/util/net/ssl_manager_openssl.cpp
src/mongo/util/net/ssl_manager_windows.cpp

`src/mongo/util/net/ssl_manager.cpp` was modified to make this change
work in the older SSL stack of v3.6.
Branch: v3.6
https://github.com/mongodb/mongo/commit/fea9933ab0d28638e97304c395f2eaf7ba63881c

Comment by Githook User [ 29/May/19 ]

Author:

{'email': 'adam.martin@10gen.com', 'name': 'ADAM David Alan Martin', 'username': 'adamlsd'}

Message: SERVER-40156 Replica sets support Split Horizons

Replica sets can now respond to `isMaster` requests with
different hostnames and ports, if contacted via alternate
names using TLS. The `horizons` field in replica set
member configurations can be used to control which
`HostAndPort` to reply with for which "horizon view" of
a replica set.

(cherry picked from commit 6784f6568cc45fe25510e2d2393be57daffb5411)

Conflicts:
src/mongo/db/client.h
src/mongo/db/repl/SConscript
src/mongo/db/repl/replication_coordinator_impl_test.cpp
src/mongo/db/repl/replication_info.cpp
src/mongo/db/repl/topology_coordinator.h
src/mongo/transport/session_asio.h
src/mongo/util/net/ssl_manager_openssl.cpp
Branch: v4.0
https://github.com/mongodb/mongo/commit/6d6d54c9d638dad00f51a6640a696554c0e8675b

Comment by Githook User [ 17/May/19 ]

Author:

{'email': 'adam.martin@10gen.com', 'name': 'ADAM David Alan Martin', 'username': 'adamlsd'}

Message: SERVER-40156 Replica sets support Split Horizons

Replica sets can now respond to `isMaster` requests with
different hostnames and ports, if contacted via alternate
names using TLS. The `horizons` field in replica set
member configurations can be used to control which
`HostAndPort` to reply with for which "horizon view" of
a replica set.
Branch: master
https://github.com/mongodb/mongo/commit/6784f6568cc45fe25510e2d2393be57daffb5411

Generated at Thu Feb 08 04:54:10 UTC 2024 using Jira 9.7.1#970001-sha1:2222b88b221c4928ef0de3161136cc90c8356a66.