PKEY not detected for read-only tables
v6.1.1
When the role used by massive only has SELECT permission (r when doing \dp) on a table, the primary key is not detected.
I haven't investigated in depth for now, but the following query (used when massive is initialized) does not contain data for read-only tables:
SELECT
tc.table_schema,
tc.table_name,
array_agg(DISTINCT kc.column_name::text) FILTER (WHERE kc.column_name IS NOT NULL) AS columns
FROM
information_schema.table_constraints tc
LEFT OUTER JOIN information_schema.key_column_usage kc ON
kc.constraint_schema = tc.table_schema
AND kc.table_name = tc.table_name
AND kc.constraint_name = tc.constraint_name
WHERE
tc.constraint_type = 'PRIMARY KEY'
GROUP BY
tc.table_schema,
tc.table_name;
Granting INSERT to the role fixed the problem.