HomeAbout Us A-Z IndexSearch * Contact Us Register LoginPress Shop

The Open Brand -- Problem Reporting and Interpretations System


Problem Report 0396 Details

Help Show help | Quick Search | Submit a Test Suite Support Request | Click here to view your privileges

This page provides all information on Problem Report 0396.


Report 0396 Actions


    Problem Report Number 0396
    Submitter's Classification Specification problem
    State Resolved
    Resolution Rejected (REJ)
    Problem Resolution ID REJ.X.0015
    Raised 1993-01-04 08:00
    Updated 2003-03-13 08:00
    Published null
    Product Standard Internationalised System Calls and Libraries (XPG4)
    Certification Program The Open Brand certification program
    Test Suite VSX4 version 4.2.4
    Test Identification dm.isam/Various/Various Various
    Problem Summary PG4R.015 This error occurs because two processes are accessing a file through the same file descriptor, expecting the locks to conflict. But, since we do locking by file descriptor, not by pid, the locks do no...
    Problem Text
    This error occurs because two processes are accessing a file through
    the same file descriptor, expecting the locks to conflict. But, since
    we do locking by file descriptor, not by pid, the locks do not
    conflict. The fix is to open a new file descriptor in the child
    process, and use the new file descriptor to access the data (or find
    it locked). This situation occurs in the following tests:

    isdelcurr 8 (shown above)
    isdelete 7
    isdelrec 6
    isread 20, 22, 23

    This problem has already been acknowledged by X/Open in the VSX
    questionnaire.

    Test Output

    ************************************************************************
    /tset/dm.isam/rec/isdelcurr/T.isdelcurr 8 Failed

    Test Description:
    ELOCKED in iserrno, isstat1 = 9, (and in XPG4, isstat3 = 9,) a value
    of -1 is returned and no record deleted if the requested record has
    been locked by another process.

    Test Strategy:
    OPEN ISAM file
    CREATE process pair
    CHILD process will
    READ first record with ISLOCK
    PARENT process will
    POSITION before first record
    READ first record
    DELETE current record using isdelcurr()
    VERIFY that isdelcurr() returns -1 and
    sets iserrno to ELOCKED and isstat1 to 9 and (in XPG4) isstat3 to
    9
    READ current record
    VERIFY that original record is read
    CHILD process will
    RELEASE records
    CLOSE isam file

    Test Information:
    Failed: isdelcurr() deleting locked record from file
    RETURN VALUES: expected: -1, observed: 0
    ERRNO VALUES: expected: 1007 (ELOCKED), observed: 0 (NO ERROR)
    ISSTAT1 VALUES: expected: 9, observed: 0
    ISSTAT3 VALUES: expected: 9, observed: 0

    ************************************************************************

    Review Information

    Review Type TSMA Review
    Start Date null
    Completed null
    Status Complete
    Review Recommendation No Resolution Given
    Review Response
    On page 17 of the ISAM Developers Specification it states that

    Both automatic and manual locking techniques allow other processes
    to read records locked by the current process as long as the other
    processes are not trying to lock those records (either manually or
    automatically). However, processes cannot lock, re-write or delete
    records locked by another process.

    This description states that locks are related to processes rather than to
    ISAM file descriptors as is suggested by the rationale provided in support
    of this interpretation request. The granting of this interpretation request
    is not recommended.

    Review Type SA Review
    Start Date null
    Completed null
    Status Complete
    Review Resolution Rejected (REJ)
    Review Conclusion
    This interpretation request is refused.

    Problem Reporting System Options:

     

    Back   


Contact the Certification Authority