STechno

Note 546006 - Problems with Oracle due to operating system errors

Version : 54 / 2010-02-12


Symptom

One of the following errors (summarized below as ORA-270xx) appears in the alert log or elsewhere:

ORA-27037: unable to obtain file status
ORA-27041: unable to open file
ORA-27044: unable to write the header block of file
ORA-27045: unable to close the file
ORA-27046: file size is not a multiple of logical block size
ORA-27047: unable to read the header block of file
ORA-27048: skgfifi: file header information is invalid
ORA-27052: unable to flush file data
ORA-27061: waiting for async I/Os failed
ORA-27063: skgfospo: number of bytes read/written is incorrect
ORA-27064: skgfdisp: cannot perform async I/O to file
ORA-27069: skgfdisp: attempt to do I/O beyond the range of the file
ORA-27070: skgfdisp: async read/write failed
ORA-27072: skgfdisp: I/O error
ORA-27091: skgfqio: unable to queue I/O
ORA-27102: out of memory
ORA-27123: unable to attach to shared memory segment

These messages are usually accompanied by more detailed error messages that contain information about the file in which the problem occurred and how the file was accessed (by selecting read, write or open):

ORA-00202: controlfile: '<controlfile>'
ORA-00205: error in identifying controlfile, check alert log for
          more info
ORA-00206: error in writing (block <block>, # blocks ) of controlfile
ORA-00210: cannot open the specified controlfile
ORA-00221: error on write to controlfile
ORA-00255: error archiving log <lognr> of thread 1, sequence
ORA-00272: error writing archive log
ORA-00308: cannot open archived log '<archivelog>'
ORA-00312: online log <lognr> thread 1: <redolog>
ORA-00313: open failed for members of log group <loggroup> of thread 1
ORA-00321: log <log> of thread 1, cannot update log file header
ORA-00333: redo log read error block <block> count <count>
ORA-00334: archived log: '<archivelog>'
ORA-00340: IO error processing online <lognr> of thread 1
ORA-00345: redo log write error block <block> count <count>
ORA-00346: log member marked as STALE
ORA-01110: data file <file>
ORA-01114: IO error writing block to file <file>
ORA-01115: IO error reading block from file <file>
ORA-01116: error in opening database file <file>
ORA-01157: cannot identify/lock data file <datafile>
ORA-01565: error in identifying file <file>
ORA-19502: write error on file "<file>", block no <block>

KCF: write/open error block=<block> online=1
error=27041 txt: '<errortext>'
error=27047 txt: '<errortext>'
error=27063 txt: '<errortext>'
error=27069 txt: '<errortext>'
error=27070 txt: '<errortext>'
error=27072 txt: '<errortext>'
error=27091 txt: '<errortext>'
Automatic datafile offline due to write error on file <file>
OSD-04002: unable to open file
OSD-04006: ReadFile() failure, unable to read from file
OSD-04008: WriteFile() failure, unable to write to file

The latest error messages are most relevant for you when you analyze the error in your file, for instance:

O/S-Error: (OS 112) There is not enough space on the disk.
<unix> Error: 28: No space left on device
O/S-Error: (OS 1) Incorrect function.
O/S-Error: (OS 121) The semaphore timeout period has expired.
<unix> Error: 4: Interrupted system call
<unix> Error: 9: Bad file number
<unix> Error: 32: Broken pipe
...


Other Terms

Additional information.


Reason and Prerequisites

If you cannot access a database file (for instance a data file, control file or RedoLog) for whatever reason, an ORA-270xx appears. The actual cause comes from additional error messages (usually in the operating system) that occur on ORA-270xx.

For the following, use the <unix> placeholder for the name of the operating system that initiated the operating system-dependent error messages:

RELIANT:  SVR4
SOLARIS:  SVR4
HP-UX:    HPUX
AIX:      IBM / AIX RISC / System 6000
LINUX:    Linux
TRU64:    Digital Unix / Compaq Tru64 UNIX

The error messages below that begin with "O/S Error" originate from NT / W2K.

The following describe possible causes, depending on the closing error message:

    1. O/S-Error: (OS 32) The process cannot access the file because it is
              being used by another process.
    O/S-Error: (OS 33) The process cannot access the file because
               another process has locked a portion of the file.
    2. O/S-Error: (OS 112) There is not enough space on the disk.
    <unix> Error: 28: No space left on device
    <unix> Error: 48: Operation not supported
    3. O/S-Error: (OS 2) The system cannot find the file specified.
    O/S-Error: (OS 3) The system cannot find the path specified.
    <unix> Error: 2: No such file or directory
    <unix> Error: 6: No such device or address
    <unix> Error: 52: Missing file or filesystem
    4. O/S-Error: (OS 5) Access is denied.
    <unix> Error: 13: Permission denied
    5. <unix> Error: 27: File too large
    6. O/S-Error: (OS 1) Incorrect function.
    O/S-Error: (OS 6) The handle is invalid.
    O/S-Error: (OS 21) The device is not ready.
    O/S-Error: (OS 23) Data error (cyclic redundancy check)
    O/S-Error: (OS 31) A device attached to the system is not functioning.

    O/S-Error: (OS 121) The semaphore timeout period has expired.
    O/S-Error: (OS 170) The requested resource is in use.
    O/S-Error: (OS 1117) The request could not be performed because
              of an I/O device error.
    O/S-Error: (OS 1392) The file or directory is corrupted and
              unreadable.
    <unix> Error: 4: Interrupted system call
    <unix> Error: 5: I/O error
    <unix> Error: 19: No such device
    <unix> Error: 22: Invalid argument
    <unix> Error: 78: Connection timed out
    <unix> Error: 83: System call timed out
    <unix> Error: 125: Unknown error
    OSD-04004: invalid file header
    OSD-04016: Error queuing an asynchronous I/O request.
    OSD-04023: SleepEx() failure, unable to Sleep
    7. <unix> Error: 14: Bad address
    8. O/S-Error: (OS 1450) Insufficient system resources exist to complete
    the requested service.
    9. <unix> Error: 25: Inappropriate ioctl for device
    10. <unix> Error: 23: File table overflow
    11. <unix> Error: 24: too many open files
    12. <unix> Error: 12: Not enough space
    O/S-Error: (OS 8) Not enough storage is available to process this
               command
    13. O/S-Error: (OS 38) Reached end of file.
    14. <unix> Error: 11: Resource temporarily unavailable
    15. OSD-04026: Invalid parameter passed.
    16. OSD-04012: file size mismatch (OS <number>)
    17. <unix> Error: 9: Bad file number
    18. <unix> Error: 38: Function not implemented
    19. <unix> Error: 124: Unsupported attribute value
    20. <unix> Error: 32: Broken pipe

Solution : https://service.sap.com/sap/support/notes/546006

(SAP Service marketplace login required)