> 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
© William Yuan 2000
Email William