37 lines
1.0 KiB
PL/PgSQL
37 lines
1.0 KiB
PL/PgSQL
alter table public.documents
|
|
add column if not exists mindmap_data jsonb,
|
|
add column if not exists raw_text text,
|
|
add column if not exists index_status text not null default 'pending';
|
|
|
|
alter table public.documents
|
|
alter column index_status set default 'pending';
|
|
|
|
alter table public.documents
|
|
alter column updated_at set default timezone('utc', now());
|
|
|
|
alter table public.documents
|
|
alter column created_at set default timezone('utc', now());
|
|
|
|
create index if not exists documents_user_updated_idx
|
|
on public.documents (user_id, updated_at desc);
|
|
|
|
create index if not exists documents_index_status_idx
|
|
on public.documents (index_status);
|
|
|
|
create or replace function public.set_documents_updated_at()
|
|
returns trigger
|
|
language plpgsql
|
|
security invoker
|
|
as $$
|
|
begin
|
|
new.updated_at := timezone('utc', now());
|
|
return new;
|
|
end;
|
|
$$;
|
|
|
|
drop trigger if exists set_documents_updated_at on public.documents;
|
|
create trigger set_documents_updated_at
|
|
before update on public.documents
|
|
for each row
|
|
execute procedure public.set_documents_updated_at();
|