SurfSense/scripts/docker/init-electric-user.sql
Anish Sarkar 82c6dd0221 feat: Integrate Electric SQL for real-time notifications and enhance PostgreSQL configuration
- Added Electric SQL service to docker-compose for real-time data synchronization.
- Introduced PostgreSQL configuration for logical replication and performance tuning.
- Created scripts for initializing Electric SQL user and electrifying tables.
- Implemented notification model and service in the backend.
- Developed ElectricProvider and useNotifications hook in the frontend for managing notifications.
- Updated environment variables and package dependencies for Electric SQL integration.
2026-01-12 12:47:00 +05:30

23 lines
829 B
SQL

-- Create Electric SQL replication user
-- This script is run during PostgreSQL initialization
DO $$
BEGIN
IF NOT EXISTS (SELECT FROM pg_user WHERE usename = 'electric') THEN
CREATE USER electric WITH REPLICATION PASSWORD 'electric_password';
END IF;
END
$$;
-- Grant necessary permissions
GRANT CONNECT ON DATABASE surfsense TO electric;
GRANT USAGE ON SCHEMA public TO electric;
GRANT SELECT ON ALL TABLES IN SCHEMA public TO electric;
GRANT SELECT ON ALL SEQUENCES IN SCHEMA public TO electric;
-- Grant permissions on future tables
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON TABLES TO electric;
ALTER DEFAULT PRIVILEGES IN SCHEMA public GRANT SELECT ON SEQUENCES TO electric;
-- Note: Electric SQL will create its own publications automatically
-- We don't need to create publications here