Page MenuHomeSoftware Heritage

059.sql
No OneTemporary

-- SWH DB schema upgrade
-- from_version: 58
-- to_version: 59
-- description: Factor out swh_mktemp_content_sha1 and swh_mktemp_release_get to swh_mktemp_bytea.
insert into dbversion(version, release, description)
values(59, now(), 'Work In Progress');
DROP FUNCTION swh_mktemp_content_sha1();
DROP FUNCTION swh_mktemp_release_get();
CREATE OR REPLACE FUNCTION swh_content_missing_per_sha1() RETURNS SETOF sha1
LANGUAGE plpgsql
AS $$
begin
return query
(select id::sha1
from tmp_bytea as tmp
where not exists
(select 1 from content as c where c.sha1=tmp.id));
end
$$;
CREATE OR REPLACE FUNCTION swh_mktemp_bytea() RETURNS void
LANGUAGE sql
AS $$
create temporary table tmp_bytea (
id bytea
) on commit drop;
$$;
CREATE OR REPLACE FUNCTION swh_release_get() RETURNS SETOF release_entry
LANGUAGE plpgsql
AS $$
begin
return query
select r.id, r.target, r.target_type, r.date, r.date_offset, r.date_neg_utc_offset, r.name, r.comment,
r.synthetic, p.id as author_id, p.name as author_name, p.email as author_email
from tmp_bytea t
inner join release r on t.id = r.id
inner join person p on p.id = r.author;
return;
end
$$;
CREATE OR REPLACE FUNCTION swh_release_missing() RETURNS SETOF sha1_git
LANGUAGE plpgsql
AS $$
begin
return query
select id::sha1_git from tmp_bytea t
where not exists (
select 1 from release r
where r.id = t.id);
end
$$;

File Metadata

Mime Type
text/plain
Expires
Wed, Jun 4, 7:19 PM (2 d, 17 h ago)
Storage Engine
blob
Storage Format
Raw Data
Storage Handle
3285533

Event Timeline