Solution: (Solaris)
The VxFS vx_maxlink tunable determines the number of sub-directories that can
be created under a directory.
A VxFS file system obtains the value of vx_maxlink from the system configuration
file /etc/system. By default, vx_maxlink is 32K. To change the computed value
of vx_maxlink, you can add an entry to the system configuration file.
For example:
set vxfs:vx_maxlink = 65534
sets vx_maxlink to the maximum number of sub-directories. Valid values are 1
to 65534 (FFFE hexadecimal).
Changes to vx_maxlink take effect after rebooting.
Solution: (RHEL 5.X)
See:
Solution (RHEL 6.X and 7.X)
See:
https://www.veritas.com/content/support/en_US/article.100033962
Solution (AIX)
See:
Applies To
VXFS filesystem on Solaris, RHEL and AIX. Probably also on SUSE and HP-UX as well.
Note for CFS filesystems
The situation gets a little more complicated for CFS filesystems. Basically the master node for the filesystem needs to be rebooted to get the change to take effect. However, once you attempt to reboot the master node for the CFS filesystem, the cluster will elect a new master while the old master reboots. Thus in order to get this to take effect for a CFS filesystem, the above changes will have to be made on each node and each node needs to be rebooted. It’s up to the customer if they want to do one at a time, or all at once.
Note: While it might be possible to make these changes to one node, reboot it, then force it to be the master. It’s unclear what will happen if that node crashes or for some other reason gives up being the master node for the filesystem to another node that does not have these modifications made. It will most likely lead to data corruption in the directory that contains over 32,767 subdirectories. Thus it’s highly recommended to make the changes cluster wide at the same time.