This section contains error messages pertaining to disk activation and system administrator disk commands.
16
I/O error during disk initialization. PHYSNAME '%.*s' may be incorrect or %ld (VSTART + SIZE) may exceed the size of the device. Please consult the SQL Server error log for more details.
This error may be caused by a hardware problem.
This error occurs when a disk init command fails. It can occur for the following reasons:
Incorrect physical device name
Incorrect size
Virtual device number not unique
Permission problem
UNIX kernel not configured for asynchronous I/O.
Check the Adaptive Server error log for information that might help determine the cause of the error.
If necessary, check the items mentioned in the sections below.
Make any needed changes and then run the command again.
Make sure you have the correct physical device name. Refer to the Adaptive Server installation and configuration guide or the System Administration Guide for instructions.
The size parameter of the disk init command must be specified in units of 2K blocks in version 12.0.x and earlier ; or Kilobytes (k or K), Megabytes(m or M), or Gigabytes (g or G) in 12.5 and later.
Sizing 2K units
There are 512 2K blocks in 1MB. Use the formula:
#_of_Megabytes * #_of_data_pages_per_Megabyte = #_of_2K_blocks
For example, to initialize a 10MB Sybase device, specify 5120 for the size:
10MB * 512 = 5120
To determine the number of 2K blocks to use for a raw partition on a UNIX system, convert the size of the partition, in sectors, to 2K blocks. The size of a sector varies on different UNIX systems. For example, it is 512 bytes on Sun, so use sectors/4 for the size parameter. It is 1024 bytes on HP, so use sectors/2. Also, see the information below about virtual device numbers. You must restart Adaptive Server or use a different virtual device number when you reissue the disk init command.
Refer to the Adaptive Server installation and configuration guide for more information about Sybase and your operating system's partitions.
Not all operating systems have partitions as described above.
The vdevno parameter of the disk init command must be unique. Also, if a disk init command fails, Adaptive Server saves the vdevno used, even though the disk init command failed. To make the vdevno available again, restart Adaptive Server. Use sp_helpdevice to determine which virtual device numbers have been used.
The available number of virtual devices is equal to the number of configured devices minus one. For example, if the number of devices configuration parameter is set to 10, then there are 9 available devices, 1 through 9.
If Adaptive Server was started by the “sybase” account, it must have permission to write to the raw partition or to create a file in the directory specified by disk init. Raw partitions used by Sybase should always be owned by the “sybase” account. Correct the permissions problem and execute the command again, using a different vdevno. Refer to “Virtual Device Number” for more information.
If the UNIX kernel (on SunOS 4.x/Sun Solaris 1.x systems only) is not configured for asynchronous I/O, the 5115 error occurs only if your master device is on a UNIX file, and you are trying to do a disk init on a raw partition. Have your UNIX administrator rebuild the kernel to allow for asynchronous I/O. Refer to Error 823 for more information.
All versions
16
DISK INIT encountered an error while attempting to open/create the physical file. Please consult the SQL Server error log (in the SQL Server boot directory) for more details.
This error may be caused by a hardware problem.
This error occurs when a disk init command fails while trying to initialize an operating system file or a raw partition for use as a database device. It can occur for the following reasons:
Incorrect physical device name
Permission problem
Incorrect size specified (for raw devices, when you request initialization of a device larger than the size of the raw partition)
Not enough room on the device.
Check each section below, make any needed changes and then run the command again.
Make sure you have the correct physical device name. Refer to the Adaptive Server installation and configuration guide or the System Administration Guide for instructions.
If Adaptive Server was started by the “sybase” account, it must have permission to write to the raw partition or to create a file in the directory specified by disk init. Raw partitions used by Sybase should always be owned by the “sybase” account. Correct the permissions problem and execute the command again, using a different vdevno. Refer to “Virtual Device Number” for more information.
Adaptive Server should not be started by “root.” If it is started by root, you will get Error 5123 if the device or file is owned by “sybase.”
When you request initialization of a raw device, make sure the size you specify is not larger than the size of the raw partition.
The size parameter of the disk init command must be specified in units of 2K blocks (size of most data pages). There are 512 2K blocks in a megabyte. Use the formula:
#_of_Megabytes * #_of_data_pages_per_Megabyte = #_of_2K_blocks
For example, to initialize a 10MB Sybase device, specify 5120 for the size:
10MB * 512 = 5120
To determine the number of 2K blocks to use for a raw partition on a UNIX system, convert the size of the partition, in sectors, to 2K blocks. The size of a sector varies on different UNIX systems. For example, it is 512 bytes on Sun, so use sectors/4 for the size parameter. It is 1024 bytes on HP, so use sectors/2. Also, see the information below about virtual device numbers. You must restart Adaptive Server or use a different virtual device number when you reissue the disk init command.
Refer to the Adaptive Server installation and configuration guide for more information about Sybase and your operating system's partitions. For example, on UNIX, there is a size limitation of 2GB for a device file.
Not all operating systems have partitions as described above.
Refer to “Initializing Database Devices” in the System Administration Guide for information about disk init.
All versions
16
Mirroring for device ’%.*s’ is not currently enabled.
Error 5142 is raised when you execute a disk unmirror command in retain mode, but the device in question is not currently mirrored.
Disk mirroring is automatically deactivated when a read or write to a mirrored device fails. You may see Error 5142, possibly accompanied by additional messages at the console or in the error log:
if there are transient device failures
if the mirror was set up improperly, for example if an incorrect device name was specified.
Take the following steps:
Look at the server error log. Check for additional errors preceding the 5142 error to determine the probable cause. For example, a udunmirror kernel error indicates a physical disk problem leading to I/O failure; for corrective action, refer to the writeup for udunmirror Errors in this manual.
If the device was recently mirrored or remirrored, check the procedure used to set up the mirror. Since a database device and its mirror constitute one logical device, you should not initialize the mirror device with disk init. Also check the syntax used for the disk mirror command, ensuring that the path to the mirror is properly specified. Finally, check disk configuration and make sure the disk is properly labeled.
To retain use of asynchronous I/O, always mirror devices that are capable of asynchronous I/O to other devices capable of asynchronous I/O. In most cases, this means mirroring raw devices to raw devices and operating system files to operating system files.
Refer to “Initializing Mirrors” in the System Administration Guide for details.
All versions