Product Documentation

Database Administrator's Guide

Previous Topic

Next Topic

Solaris

On Solaris systems, CPU_AFFINITY accepts a single numeric value, which is interpreted as a processor set number. For example, CPU_AFFINITY 2 configures FairCom DB to run on processor set 2.

Note: To use CPU_AFFINITY under Solaris you need to run the FairCom DB Server with root permission. This because Solaris requires any process using a processor set to have such permission.

To create a processor set on Solaris, use the Solaris command psrset. For example, to create a set comprising processors 4 through 7, use:

psrset -c 4-7

where:

  • -c - Create processor set.
  • 4-7 - The processor numbers included in the set.

The ID of the newly created processor set is returned:

created processor set ps_id

To bind a process to this processor set, use:

psrset -b ps_id pid

where:

  • -b - Bind.
  • ps_id - The ID returned by the command when the processor set was created.
  • pid - The ID of the process to be bound to the processor set.

If the process does not have permission to assign itself to the specified processor set (or if an invalid processor set is specified), FairCom DB logs the following message to CTSTATUS.FCS, where <configuration_file_name> is the name of the FairCom DB configuration file, <line_number> is the line number on which the CPU_AFFINITY option was specified, and <error_code> is the system error code returned by the OS.

Configuration error: <configuration_file_name>, line <line_number>: Failed to set CPU affinity: system error code <error_code>.

TOCIndex