2 files changed, 10 insertions, 4 deletions
diff --git a/synapse/storage/group_server.py b/synapse/storage/group_server.py
index 96553d4fb1..db66ea1eb0 100644
--- a/synapse/storage/group_server.py
+++ b/synapse/storage/group_server.py
@@ -30,16 +30,16 @@ _DEFAULT_ROLE_ID = ""
class GroupServerStore(SQLBaseStore):
- def set_group_joinable(self, group_id, is_joinable):
+ def set_group_join_policy(self, group_id, join_policy):
return self._simple_update_one(
table="groups",
keyvalues={
"group_id": group_id,
},
updatevalues={
- "is_joinable": is_joinable,
+ "join_policy": join_policy,
},
- desc="set_group_joinable",
+ desc="set_group_join_policy",
)
def get_group(self, group_id):
diff --git a/synapse/storage/schema/delta/48/groups_joinable.sql b/synapse/storage/schema/delta/48/groups_joinable.sql
index ace7d0a723..ab3b00286d 100644
--- a/synapse/storage/schema/delta/48/groups_joinable.sql
+++ b/synapse/storage/schema/delta/48/groups_joinable.sql
@@ -13,4 +13,10 @@
* limitations under the License.
*/
-ALTER TABLE groups ADD COLUMN is_joinable SMALLINT DEFAULT 0 NOT NULL;
+/*
+ * This isn't a real ENUM because sqlite doesn't support it
+ * and we use a default of NULL for inserted rows and interpret
+ * NULL at the python store level as necessary so that existing
+ * rows are given the correct default policy.
+ */
+ALTER TABLE groups ADD COLUMN join_policy TEXT DEFAULT NULL;
|