3 files changed, 15 insertions, 4 deletions
diff --git a/scripts-dev/nuke-room-from-db.sh b/scripts-dev/nuke-room-from-db.sh
index 1201d176c2..cd74d78d6a 100755
--- a/scripts-dev/nuke-room-from-db.sh
+++ b/scripts-dev/nuke-room-from-db.sh
@@ -6,9 +6,19 @@
## Do not run it lightly.
+set -e
+
+if [ "$1" == "-h" ] || [ "$1" == "" ]; then
+ echo "Call with ROOM_ID as first option and then pipe it into the database. So for instance you might run"
+ echo " nuke-room-from-db.sh <room_id> | sqlite3 homeserver.db"
+ echo "or"
+ echo " nuke-room-from-db.sh <room_id> | psql --dbname=synapse"
+ exit
+fi
+
ROOMID="$1"
-sqlite3 homeserver.db <<EOF
+cat <<EOF
DELETE FROM event_forward_extremities WHERE room_id = '$ROOMID';
DELETE FROM event_backward_extremities WHERE room_id = '$ROOMID';
DELETE FROM event_edges WHERE room_id = '$ROOMID';
diff --git a/synapse/metrics/metric.py b/synapse/metrics/metric.py
index fbba94e633..f421e7a93f 100644
--- a/synapse/metrics/metric.py
+++ b/synapse/metrics/metric.py
@@ -71,7 +71,8 @@ class BaseMetric(object):
"""Render this metric for a single set of labels
Args:
- label_values (list[str]): values for each of the labels
+ label_values (list[object]): values for each of the labels,
+ (which get stringified).
value: value of the metric at with these labels
Returns:
@@ -324,4 +325,4 @@ def _escape_character(m):
def _escape_label_value(value):
"""Takes a label value and escapes quotes, newlines and backslashes
"""
- return re.sub(r"([\n\"\\])", _escape_character, value)
+ return re.sub(r"([\n\"\\])", _escape_character, str(value))
diff --git a/synapse/rest/client/v2_alpha/notifications.py b/synapse/rest/client/v2_alpha/notifications.py
index ec170109fe..66583d6778 100644
--- a/synapse/rest/client/v2_alpha/notifications.py
+++ b/synapse/rest/client/v2_alpha/notifications.py
@@ -88,7 +88,7 @@ class NotificationsServlet(RestServlet):
pa["topological_ordering"], pa["stream_ordering"]
)
returned_push_actions.append(returned_pa)
- next_token = pa["stream_ordering"]
+ next_token = str(pa["stream_ordering"])
defer.returnValue((200, {
"notifications": returned_push_actions,
|