IIprotect locking

> Hi,
> 
> Lately, we have an application that caused multiple page locks on
> the iiprotect system table.
> 
> Does anyone know (in 20 words or less), when and why ingres
> locks iiprotect ?
> Knowing this would help debug the app.
> 
> Thanks
> 
> Andre


Hi Andre,

    Locks on iiprotect are taken when grants are being issued/revoked/updated.

    Furthermore, everytime you run a query the system must work out whether or
    not you have the right to access the tables/views in question. It has to
    go to iiprotect to do this. ie readlocks.

    iiprotect is a hash with a non unique key. Extensive overflow may easily
    occur depending on the extent of grants in your database. This can be an
    issue if you often hand out extra grants (often associated with table
    loading scripts prepared by copydb or unloaddb). The exclusive locks 
    required to install the grant then lock the overflow chain as well and may 
    cause havoc with lock contention.

    You may find that a sysmod could help clean up the table and reduce the
    problem. On the otherhand, I have a case where a database has been
    designed with each table having extensive grants to the vast numer of
    usergroups that exist. No matter how much I have pleaded with the
    designers of that database I can't shake their belief this is a sensible
    option. So every now and then they reload their test database and reapply
    the grants. System response gets very ordinary while that's occuring!!

    Martin Bowes
Ingres Q & A
Back to William's Home Page

© William Yuan 2000

Email William