Re: Expression index with function based on current_user? - Mailing list pgsql-hackers

From Hannu Krosing
Subject Re: Expression index with function based on current_user?
Date
Msg-id 1139400898.3658.2.camel@localhost.localdomain
Whole thread Raw
In response to Expression index with function based on current_user?  (Fredrik Olsson <fredrik.olsson@treyst.se>)
List pgsql-hackers
Ühel kenal päeval, K, 2006-02-08 kell 12:26, kirjutas Fredrik Olsson:
> I have private tables such as this (Very simplified):
> CREATE TABLE private.t_foo (
>   ...
> );
> REVOKE ALL ON private.t_foo FROM public;
> 
> Different users have access to different  data in the table, so I do 
> this view:
> CREATE VIEW foo AS
>   SELECT * FROM private.t_foo WHERE private.haveaccess();
> GRANT ALL ON foo TO public;
> 
> Using rules I then make the view updatable (In reality views fetch and 
> write data to multiple tables usually). This works fine, but I have some 
> thought on performance in the future.
> 
> The function private.haveaccess()'s result depends on the currently 
> logged in user, is it still possible to create an expression index over 
> that function?

No, but you probably can crete index on static function
user_has_access(username) and then use that func in
private.haveaccess()

------------
Hannu




pgsql-hackers by date:

Previous
From: "Pavel Stehule"
Date:
Subject: Re: Expression index with function based on current_user?
Next
From: Andrew Rawnsley
Date:
Subject: Re: streamlined standby procedure