PN3_10008

 


Patch PN3_10008
Keyword JRLA
Description Fix multi-cpu detection on HPUX
Date March 26, 1998
Patch Details This patch corrects the behaviour of jRLA on a HPUX multi-processor system. Only this type of system had the failure, although the fix also affects the way AIX and Digital Unix work on multi-processor systems.

The problem arose because of the way jRLA locks its table headers on multi-processor systems. For performance, those systems that support memory semaphores (AIX , Digital Unix , HPUX) used this mechanism as it is quicker than using conventional semaphores. Memory semaphores allow a crude single-thread lock to be taken on any bit of common memory.

On AIX and Digital Unix common memory could mean normal IPC shared memory or memory mapped files. For HPUX it only meant memory mapped files. This patch means we now use less shared memory on these systems (by a small margin) but have to create a file /usr/jbc/tmp/jRLA.lock.file to support the memory mapped semaphores. It also means that /usr/jbc/tmp MUST exist for jRLA to work, but this covers 100% of our users anyway.

This patch description is for use by jBASE customers and VARs as an aid to supporting their jBASE installations only and may not be redistributed or published in any form without prior written permission of jBASE Software. This page was produced on February 14, 2000.