|
Home About Us A-Z Index Search * Contact Us Register Login Press ShopThe Open Brand -- Problem Reporting and Interpretations System |
Problem Report 0396 Details
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:
- View Report 0396
- List All PRs
- Search Reports
- Email the System Administrator
- View the The Open Brand Interpretations Database User Manual
Contact the Certification Authority