Skip to content
This repository has been archived by the owner on Apr 26, 2024. It is now read-only.

Unix Sockets for HTTP Replication #15708

Merged
Merged
Show file tree
Hide file tree
Changes from 1 commit
Commits
Show all changes
43 commits
Select commit Hold shift + click to select a range
214b7a4
Fixup how the HTTPConnectionPool key is declared and comments around/…
realtyem May 25, 2023
b41435a
Drive by fix: remove the disambiguity of seeing 'master' instead of '…
realtyem May 26, 2023
ca21dce
Create new InstanceUNIXLocationConfig, and finish wiring up UNIX Sock…
realtyem May 26, 2023
e75b177
Changelog
realtyem Jun 2, 2023
0aeae16
Merge branch 'develop' into finish-unix-replication-series
realtyem Jun 2, 2023
7d03b2d
Adapt test_workers to handle Class rename
realtyem Jun 4, 2023
0d79903
[OPTIONAL REVERT] Change Type[Model] to TypeAlias as a Hack
realtyem Jun 4, 2023
7bc139a
Try writing some docs
realtyem Jun 4, 2023
acd56db
Experimental testing setup for Unix sockets with Complement.
realtyem Jun 4, 2023
e14422f
[REVERT THIS] Enable testing for the Complement CI, each test will us…
realtyem Jun 4, 2023
eb65470
Revert "Drive by fix: remove the disambiguity of seeing 'master' inst…
realtyem Jun 14, 2023
e234ce9
Apply suggestions from code review
realtyem Jun 14, 2023
6a5e705
Nit over formatting
realtyem Jun 14, 2023
ee55d2a
Add in error messages to unit test setup to discourage using Unix soc…
realtyem Jun 15, 2023
e3d4fb4
Unify various incarnations of main_public.sock(and main_private.sock)…
realtyem Jun 15, 2023
fe18b66
Add detail to docs about Synapse not creating a directory auto-magica…
realtyem Jun 15, 2023
9394941
Adjust TCP and UNIX to be initial caps instead of all caps(in the sco…
realtyem Jun 15, 2023
79f63fc
Try seeing what the doc renderer will do with 4 #'s for a subheading(…
realtyem Jun 15, 2023
c4646ee
Merge branch 'develop' into finish-unix-replication-series
realtyem Jun 15, 2023
9882e0a
Apply suggestions from code review
realtyem Jun 15, 2023
52f84a2
Fix merge derp that encompasses the TLS replication fix from 15746
realtyem Jun 16, 2023
86c5fd5
Fix lack of detail in contributing guide for how to use Unix socket f…
realtyem Jun 16, 2023
e091ea2
Try and fix comment in ReplicationAgent to be clearer about why not u…
realtyem Jun 16, 2023
4946cb0
Adjust changelog.d/15708.feature
realtyem Jun 16, 2023
0b1a943
Update docs/usage/configuration/config_documentation.md
realtyem Jun 16, 2023
39597fc
Update docs a bit more
realtyem Jun 20, 2023
6dbc402
Apply suggestions from code review
realtyem Jun 21, 2023
2f20dda
From review: wrap lines(and fix a comment consistency)
realtyem Jun 21, 2023
5de0ef1
Merge branch 'develop' into finish-unix-replication-series
realtyem Jun 21, 2023
85eba85
unindent entire block
realtyem Jun 21, 2023
4c9de6f
Revert to `Type[Model]` to keep type variable constrained; add type i…
reivilibre Jul 5, 2023
67c278a
Fix some nits and some lint needed to be burned off
realtyem Jul 5, 2023
a5d500f
Use more specific mypy ignores
reivilibre Jul 6, 2023
41d2aae
Merge branch 'develop' into finish-unix-replication-series
realtyem Jul 6, 2023
fdb07e8
Fixup for new proxyagent
realtyem Jul 6, 2023
cd1579b
Add Unix socket support to the proxyagent
realtyem Jul 6, 2023
4f079d8
[REVERT THIS] Hardwire testing the proxy agent into Complement tempor…
realtyem Jul 6, 2023
9f41f3e
Revert "[REVERT THIS] Hardwire testing the proxy agent into Complemen…
realtyem Jul 7, 2023
0ae6036
Revert "[REVERT THIS] Enable testing for the Complement CI, each test…
realtyem Jul 7, 2023
92c6c7b
Update version number of Synapse this was added in
realtyem Jul 7, 2023
cd047fe
Merge branch 'develop' into finish-unix-replication-series
realtyem Jul 7, 2023
517654f
Merge branch 'develop' into finish-unix-replication-series
MadLittleMods Jul 10, 2023
3789a4f
Swap getClientAddress().host call for the UNIXAddress compatible repl…
realtyem Jul 10, 2023
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
From review: wrap lines(and fix a comment consistency)
  • Loading branch information
realtyem committed Jun 21, 2023
commit 2f20ddae4991ce5521822baefa5bb8630c9d220f
4 changes: 3 additions & 1 deletion docs/usage/configuration/config_documentation.md
Original file line number Diff line number Diff line change
Expand Up @@ -550,7 +550,9 @@ listeners:
Example configuration #3:
```yaml
listeners:
# Unix socket listener: Ideal for Synapse deployments behind a reverse proxy, offering lightweight interprocess communication without TCP/IP overhead, avoid port conflicts, and providing enhanced security through system file permissions.
# Unix socket listener: Ideal for Synapse deployments behind a reverse proxy, offering
# lightweight interprocess communication without TCP/IP overhead, avoid port
# conflicts, and providing enhanced security through system file permissions.
#
# Note that x_forwarded will default to true, when using a UNIX socket. Please see
# https://matrix-org.github.io/synapse/latest/reverse_proxy.html.
Expand Down
12 changes: 10 additions & 2 deletions tests/server.py
Original file line number Diff line number Diff line change
Expand Up @@ -531,7 +531,11 @@ def connectUNIX(
timeout: float = 30,
checkPID: int = 0,
) -> IConnector:
"""Unix sockets aren't supported for unit tests yet. Make it obvious to any developer trying it out that they will need to do some work before being able to use it in tests."""
"""
Unix sockets aren't supported for unit tests yet. Make it obvious to any
developer trying it out that they will need to do some work before being able
to use it in tests.
"""
raise Exception("Unix sockets are not implemented for tests yet, sorry.")

def listenUNIX(
Expand All @@ -542,7 +546,11 @@ def listenUNIX(
mode: int = 0o666,
wantPID: int = 0,
) -> IListeningPort:
"""Unix sockets are not actually implemented for unit tests, tell them so"""
"""
Unix sockets aren't supported for unit tests yet. Make it obvious to any
developer trying it out that they will need to do some work before being able
to use it in tests.
"""
raise Exception("Unix sockets are not implemented for tests, sorry")

def connectTCP(
Expand Down