write_throttle
When data is written to a file through buffered writes, the file system updates only the in-memory image of the file, creating what are referred to as dirty pages. Dirty pages are cleaned when the file system later writes the data in these pages to disk. Note that data can be lost if the system crashes before dirty pages are written to disk.
Newer model computer systems typically have more memory. The more physical memory a system has, the more dirty pages the file system can generate before having to write the pages to disk to free up memory. So more dirty pages can potentially lead to longer return times for operations that write dirty pages to disk such as sync and fsync. If your system has a combination of a slow storage device and a large amount of memory, the sync operations may take long enough to complete that it gives the appearance of a hung system.
If your system is exhibiting this behavior, you can change the value of write_throttle. write_throttle lets you lower the number of dirty pages per file that the file system will generate before writing them to disk. After the number of dirty pages for a file reaches the write_throttle threshold, the file system starts flushing pages to disk even if free memory is still available. Depending on the speed of the storage device, user write performance may suffer, but the number of dirty pages is limited, so sync operations will complete much faster.
The default value of write_throttle is zero. The default value places no limit on the number of dirty pages per file. This typically generates a large number of dirty pages, but maintains fast writes. If write_throttle is non-zero, VxFS limits the number of dirty pages per file to write_throttle pages. In some cases, write_throttle may delay write requests. For example, lowering the value of write_throttle may increase the file disk queue to the max_diskq value, delaying user writes until the disk queue decreases. So unless the system has a combination of large physical memory and slow storage devices, it is advisable not to change the value of write_throttle.
Please make these changes and test to see if this resolves your issue.
Applies To
The BL engineer was able to duplicate the customer issue, and has recommended that the customer change the write_throttle to 8192 or 1024 and retest.