aboutsummaryrefslogtreecommitdiff
path: root/src/plugin/namestore/namestore-0001.sql
blob: bd323e365cf31fc6533c6b84e45673c80b9273d9 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
--
-- This file is part of GNUnet
-- Copyright (C) 2014--2022 GNUnet e.V.
--
-- GNUnet is free software; you can redistribute it and/or modify it under the
-- terms of the GNU General Public License as published by the Free Software
-- Foundation; either version 3, or (at your option) any later version.
--
-- GNUnet is distributed in the hope that it will be useful, but WITHOUT ANY
-- WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
-- A PARTICULAR PURPOSE.  See the GNU General Public License for more details.
--
-- You should have received a copy of the GNU General Public License along with
-- GNUnet; see the file COPYING.  If not, see <http://www.gnu.org/licenses/>
--

-- Everything in one big transaction
BEGIN;

-- Check patch versioning is in place.
SELECT _v.register_patch('namestore-0001', NULL, NULL);

-------------------- Schema ----------------------------

CREATE SCHEMA namestore;
COMMENT ON SCHEMA namestore IS 'gnunet-namestore data';

SET search_path TO namestore;

CREATE TABLE ns098records (
  seq BIGSERIAL PRIMARY KEY,
  zone_private_key BYTEA NOT NULL DEFAULT '',
  pkey BYTEA DEFAULT '',
  rvalue BYTEA NOT NULL DEFAULT '',
  record_count INTEGER NOT NULL DEFAULT 0,
  record_data BYTEA NOT NULL DEFAULT '',
  label TEXT NOT NULL DEFAULT '',
  editor_hint TEXT NOT NULL DEFAULT '',
  CONSTRAINT zl UNIQUE (zone_private_key,label));

CREATE INDEX IF NOT EXISTS ir_pkey_reverse 
  ON ns098records (zone_private_key,pkey);
CREATE INDEX IF NOT EXISTS ir_pkey_iter 
  ON ns098records (zone_private_key,seq);
CREATE INDEX IF NOT EXISTS ir_label 
  ON ns098records (label);


COMMIT;