summary refs log tree commit diff
diff options
context:
space:
mode:
authorErik Johnston <erik@matrix.org>2019-10-22 11:49:00 +0100
committerErik Johnston <erik@matrix.org>2019-10-22 11:55:46 +0100
commitacf47c76989de39baaa55acc6cc86871b5048601 (patch)
tree9b29f49730f4b8e25c1af1fa434e0462d2441e77
parentFix postgres unit tests to use prepare_database (diff)
downloadsynapse-acf47c76989de39baaa55acc6cc86871b5048601.tar.xz
Add a basic README to synapse.storage
-rw-r--r--MANIFEST.in1
-rw-r--r--synapse/storage/README.md13
2 files changed, 14 insertions, 0 deletions
diff --git a/MANIFEST.in b/MANIFEST.in
index 2b8244f9c5..156d6f04f7 100644
--- a/MANIFEST.in
+++ b/MANIFEST.in
@@ -13,6 +13,7 @@ recursive-include synapse/storage *.sql.postgres
 recursive-include synapse/storage *.sql.sqlite
 recursive-include synapse/storage *.py
 recursive-include synapse/storage *.txt
+recursive-include synapse/storage *.md
 
 recursive-include docs *
 recursive-include scripts *
diff --git a/synapse/storage/README.md b/synapse/storage/README.md
new file mode 100644
index 0000000000..567ae785a7
--- /dev/null
+++ b/synapse/storage/README.md
@@ -0,0 +1,13 @@
+Storage Layer
+=============
+
+The storage layer is split up into multiple parts to allow Synapse to run
+against different configurations of databases (e.g. single or multiple
+databases). The `data_stores` are classes that talk directly to a single
+database and have associated schemas, background updates, etc. On top of those
+there are (or will be) classes that provide high level interfaces that combine
+calls to multiple `data_stores`.
+
+There are also schemas that get applied to every database, regardless of the
+data stores associated with them (e.g. the schema version tables), which are
+stored in `synapse.storage.schema`.