Skip to content

Commit 4ef2ac1

Browse files
committed
Fix migration 'certificate' table
We must use 'json_extract' instead of '->' operator for compatibility issues.
1 parent 0618412 commit 4ef2ac1

File tree

1 file changed

+14
-14
lines changed

1 file changed

+14
-14
lines changed

mithril-aggregator/src/database/migration.rs

Lines changed: 14 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -106,25 +106,25 @@ insert into certificate (certificate_id,
106106
initiated_at,
107107
sealed_at)
108108
select
109-
c.value->>'$.hash' as certificate_id,
109+
json_extract(c.value, '$.hash') as certificate_id,
110110
case
111-
when c.value->>'$.multi_signature' <> '' then c.value->>'$.previous_hash'
111+
when json_extract(c.value, '$.multi_signature') <> '' then json_extract(c.value, '$.previous_hash')
112112
else NULL
113113
end as parent_certificate_id,
114-
c.value->>'$.signed_message' as message,
114+
json_extract(c.value, '$.signed_message') as message,
115115
case
116-
when c.value->>'$.multi_signature' <> '' then c.value->>'$.multi_signature'
117-
else c.value->>'$.genesis_signature'
116+
when json_extract(c.value, '$.multi_signature') <> '' then json_extract(c.value, '$.multi_signature')
117+
else json_extract(c.value, '$.genesis_signature')
118118
end as signature,
119-
c.value->>'$.aggregate_verification_key' as aggregate_verification_key,
120-
c.value->>'$.beacon.epoch' as epoch,
121-
c.value->'$.beacon' as beacon,
122-
c.value->>'$.metadata.version' as protocol_version,
123-
c.value->'$.metadata.parameters' as protocol_parameters,
124-
c.value->'$.protocol_message' as protocol_message,
125-
c.value->'$.metadata.signers' as signers,
126-
c.value->>'$.metadata.initiated_at' as initiated_at,
127-
c.value->>'$.metadata.sealed_at' as sealed_at
119+
json_extract(c.value, '$.aggregate_verification_key') as aggregate_verification_key,
120+
json_extract(c.value, '$.beacon.epoch') as epoch,
121+
json(json_extract(c.value, '$.beacon')) as beacon,
122+
json_extract(c.value, '$.metadata.version') as protocol_version,
123+
json(json_extract(c.value, '$.metadata.parameters')) as protocol_parameters,
124+
json(json_extract(c.value, '$.protocol_message')) as protocol_message,
125+
json(json_extract(c.value, '$.metadata.signers')) as signers,
126+
json_extract(c.value, '$.metadata.initiated_at') as initiated_at,
127+
json_extract(c.value, '$.metadata.sealed_at') as sealed_at
128128
from certificate_temp as c;
129129
create index epoch_index ON certificate(epoch);
130130
drop table certificate_temp;

0 commit comments

Comments
 (0)