Can't create a table with vector type as a non-super user

mrudula attili <mrudula.attili@gmail.com>

From: mrudula attili <mrudula.attili@gmail.com>
To: pgsql-general@postgresql.org
Date: 2025-09-30T13:35:06Z
Lists: pgsql-general
Hello Team,


I have recently installed the pgvector extension on one of our production
databases.
Managed to create the extension as super user and create table with the
vector type.

But a non super user (a read write user of the database) is not able to
create a table with vector type and keeps getting the below error.

CREATE TABLE items (id bigserial PRIMARY KEY, embedding vector(3))
[2025-09-30 09:22:29] [42704] ERROR: type "vector" does not exist
[2025-09-30 09:22:29] Position: 57

Actions taken:

   1. Granted usage of type vector to user


   - No luck


   2. Granted usage on schema public to user


   - Worked

Concern:
As its a production environment, we are not really happy to give away the
usage on public schema.

Is there a way we could get the end users make use of the extension without
granting usage on public schema


Thanks,
SA