Salve, mi si presenta un problema che non riesco a risolvere. accedo con una query php al mio database su postgres: ho una tabella test sul database social, ho un utente testrole sul quale faccio questa grant:

GRANT SELECT ON social.test TO testrole;

la grant va a buon fine e fin qui tutto ok;
da php ho la mia connessione al db:

function test_connection_pgsql() {
$connection = "host=localhost dbname=social user=testrole password=miapwd";
return pg_connect ($connection);
}

e faccio la query in questo modo:

if ($db = test_connection_pgsql()) {
print 'Connessione al DBMS riuscita.
';
$sql = "SELECT * FROM social.test";
$resource = pg_query($db, $sql);
$row = pg_fetch_array($resource,NULL,PGSQL_ASSOC);
print_r ($row);
pg_free_result($resource);
pg_close($db);
}

la cosa strana è che la connessione va a buon fine, infatti ottengo:

"Connessione al DBMS riuscita."

però a seguire mi dice che l'utente non ha il permesso di select sulla tabella(anche se l'ho precedentemente grantato):

Warning: pg_query(): Query failed: ERROR: permission denied for schema social LINE 1: SELECT * FROM social.test ^

dove sbaglio?