Page MenuHomeSoftware Heritage

D3476.id12295.diff
No OneTemporary

D3476.id12295.diff

diff --git a/swh/storage/cassandra/converters.py b/swh/storage/cassandra/converters.py
--- a/swh/storage/cassandra/converters.py
+++ b/swh/storage/cassandra/converters.py
@@ -35,7 +35,9 @@
extra_headers = revision.extra_headers
if not extra_headers and metadata and "extra_headers" in metadata:
extra_headers = db_revision["metadata"].pop("extra_headers")
- db_revision["metadata"] = json.dumps(db_revision["metadata"])
+ db_revision["metadata"] = json.dumps(
+ dict(db_revision["metadata"] if db_revision["metadata"] is not None else None)
+ )
db_revision["extra_headers"] = extra_headers
db_revision["type"] = db_revision["type"].value
return db_revision
diff --git a/swh/storage/cassandra/cql.py b/swh/storage/cassandra/cql.py
--- a/swh/storage/cassandra/cql.py
+++ b/swh/storage/cassandra/cql.py
@@ -779,7 +779,9 @@
assert self._origin_visit_status_keys[-1] == "metadata"
keys = self._origin_visit_status_keys
- metadata = json.dumps(visit_update.metadata)
+ metadata = json.dumps(
+ dict(visit_update.metadata) if visit_update.metadata is not None else None
+ )
self._execute_with_retries(
statement, [getattr(visit_update, key) for key in keys[:-1]] + [metadata]
)
diff --git a/swh/storage/db.py b/swh/storage/db.py
--- a/swh/storage/db.py
+++ b/swh/storage/db.py
@@ -9,11 +9,15 @@
from typing import Any, Dict, Iterable, List, Optional, Tuple, Union
from swh.core.db import BaseDb
-from swh.core.db.db_utils import stored_procedure, jsonize
+from swh.core.db.db_utils import stored_procedure, jsonize as _jsonize
from swh.core.db.db_utils import execute_values_generator
from swh.model.model import OriginVisit, OriginVisitStatus, SHA1_SIZE
+def jsonize(d):
+ return _jsonize(dict(d) if d is not None else None)
+
+
class Db(BaseDb):
"""Proxy to the SWH DB, with wrappers around stored procedures

File Metadata

Mime Type
text/plain
Expires
Sun, Aug 17, 8:48 PM (23 h, 7 m ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3216655

Event Timeline