I am running the latest 64-bit ASE-15.5 EBF 18661 ESD#4 on 64-bit RHEL-5.7
having tempdb device created as 12 GB tmpfs device on swap partition. The
tempdb device was created during the installation of ASE via install shield
(InstallAnywhere). Although O_DIRECT (directio) is not supported on tmpfs
devices in RHEL-5, 'sp_helpdevice tempdbdev' reports that directio is on.
Furthermore, ASE log shows one information, while sp_helpdevice shows
completely reversed information.

========
ASE log:
========
server Activating disk 'tempdbdev' of size 12664832 KB.
kernel The device does not support
directio. '/opt/sybase/tempdb/tempdbdev.dat' will be activated using dsync
instead of directio.
kernel Virtual device '/opt/sybase/tempdb/tempdbdev.dat' does not support
kernel asynchronous i/o. Synchronous i/o will be used for this device.
kernel Initializing virtual device 3, '/opt/sybase/tempdb/tempdbdev.dat'
with dsync 'on'.
kernel Virtual device 3 started using standard unix i/o.


==============
sp_helpdevice:
==============
master:1> sp_helpdevice tempdbdev
master:2> go
device_name physical_name description
status cntrltype vdevno vpn_low vpn_high
----------- -------------------------------- ----------------------------------------------------------------------------------------------- ------ --------- ------ ------- --------
tempdbdev /opt/sybase/tempdb/tempdbdev.dat file system device, special,
dsync off, directio on, physical disk, 12368.00 MB, Free: 16.00 MB 2
0 3 0 6332415


In short, ASE log reports that tempdbdev will be used with dsync=on and
directio=off, while sp_helpdevice shows that tempdbdev is used with
dsync=off and directio=on.

Certainly I will run sp_deviceattr to set both to off (dsync=directio=false)
and, when I do it, both ASE log and sp_helpdevice will show the settings
correctly (no inconsistency anymore!). But my question is: before I use
sp_deviceattr, where this internal inconsistency in ASE reporting is coming
from?


Niksa Jurinovic
niksa@jurinovic.de