ICAT SQL performance improvement for very large scale sets of ACLs and
users with Postgresql.

These are changes to the SQL text for two SQL statements in the
chlModAccessControl function (used in, for example, ichmod) when
recursively updating the access-permissions rows (informally, 'ACL's)
on collections.  These changes were found to signficantly improve
peformance of these two statements in the iPlant instance where these
became slow due to there being a very large number of users and many
individual ACLs (rows) per collection.

The modification is to change IN to ANY and add a ARRAY( ) around an
expression for PostgreSQL (i.e. iPlant).

For Oracle and MySQL the ARRAY construct is not supported, so for them
I'm including the IN change but not the ARRAY.  I'm not sure if this
will improve performance for Oracle or MySQL under load, or not, but
it seems it might.  These pass tests for Postgres, MySQL, and Oracle.

These (for Postgres) were developed by iPlant staff, primarily Nirav
Merchant (with a little assistance from DICE).  Thanks!



git-svn-id: svn://irodssvn.ucsd.edu/trunk@5424 ea137bd6-aa86-47b6-b90d-b101d9f19a90