GeoNetAgent, LDAPWeb, server-audit, server-connection
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

35 lines
1.4 KiB

-- Chat history Project Search (PostgreSQL geonet_project_search @ 10.100.1.25)
\connect geonet_project_search
CREATE TABLE IF NOT EXISTS project_search_chat_sessions (
id BIGSERIAL PRIMARY KEY,
session_uuid UUID NOT NULL UNIQUE,
username VARCHAR(255) NOT NULL,
status VARCHAR(32) NOT NULL DEFAULT 'active',
sources JSONB,
started_at TIMESTAMPTZ NOT NULL DEFAULT NOW(),
ended_at TIMESTAMPTZ,
message_count INTEGER NOT NULL DEFAULT 0
);
CREATE INDEX IF NOT EXISTS idx_ps_chat_sessions_user_status
ON project_search_chat_sessions (username, status);
CREATE INDEX IF NOT EXISTS idx_ps_chat_sessions_started
ON project_search_chat_sessions (started_at DESC);
CREATE TABLE IF NOT EXISTS project_search_chat_messages (
id BIGSERIAL PRIMARY KEY,
session_id BIGINT NOT NULL REFERENCES project_search_chat_sessions(id) ON DELETE CASCADE,
role VARCHAR(16) NOT NULL,
content TEXT NOT NULL,
results JSONB,
meta JSONB,
created_at TIMESTAMPTZ NOT NULL DEFAULT NOW()
);
CREATE INDEX IF NOT EXISTS idx_ps_chat_messages_session
ON project_search_chat_messages (session_id, id);
GRANT SELECT, INSERT, UPDATE, DELETE ON project_search_chat_sessions, project_search_chat_messages TO geonet_project;
GRANT USAGE, SELECT ON ALL SEQUENCES IN SCHEMA public TO geonet_project;