If redo logs or archivelogs are placed on a file system with caching enabled such as veritas quick I/O or NFS, capture may experience log parse error or not able to see the latest changes which may result in data loss.
When caching is enabled with Veritas quick I/O or NFS on file system where redologs reside, capture may not see the latest changes in a redo log and can skip records due to corruption or log parsing error.
1. Turn off caching and use direct i/o on the file systems where redo logs and archive logs are stored.
The following mount options that can be used to turn off caching:
AIX : dio
For NFS on SUN: forcedirectio
For NFS on Linux: actimeo=0 OR noac (noac= actimeo=0 + sync)
Note: Both noac and actimeo=0 options were validated with Oracle in conjunction with using directio. These options disable caching, thus guarantee that modifications are seen by the client. noac disables cache and also does sync operations. We have found that by using actimeo it still guarantees the modifications are seen by the client and provides an increase in sequential write performance over noac.
Veritas file system for HP, Solaris, AIX : convosync=direct
The convosync=direct mode converts synchronous, data synchronous reads and writes to direct reads and writes.
If you have Veritas quick i/o, the vxtunefs command can be used to determine whether Cached Quick I/O is enabled or disabled by displaying the qio_cache_enable flag. Setting of qio_cache_enable=1 means cache is turned on and when set to 0 it is turned off.
To determine the current caching state for a file system, use the vxtunefs command as follow:
# vxtunefs /mount_point
Make sure qio_cache_enable is set to 0 for file system that stores redo logs and archivelogs.
Please consult with your system admin on the proper usage of these mount options.
2. Move redo logs, archive logs off of NFS or Veritas Quick I/O to regular file systems.
For SharePlex var dir, enable caching will help performance.
In addition, you need to use nolock (linux) or llock (Sun) mount options to avoid sp_ctrl hanging issue due to NFS locking issue.
Use these options noatime, timeo=600, retrans=2 for performance improvement and reduce corruption.
Example of mount option used for SharePlex var dir on NFS (linux)
In addition, suid should be set for Oracle Home mount point as oracle binary itself has the stickybit.