Identify the server process
To debug a routine, you must identify the virtual processor in which that routine runs. By default, routines are assigned to the CPU virtual processor class. However, when you create a routine in BladeSmith, you can specify if it is poorly behaved and assign it to a user-defined virtual processor class.
To identify the virtual processor
class assigned to a routine, look at the property page for the routine
in BladeSmith. If the class field is blank, then the routine runs
in the CPU VP. See C programming guidelines for
more information about user-defined virtual processors.
Important: If you have more than one instance of a virtual processor
in a CPU or user-defined virtual processor class, threads can migrate
between virtual processors, making debugging difficult. To simplify
debugging, configure your database server so that there is only one
instance each of the CPU VP or user-defined VP used by the routines
in your DataBlade® module.
To find the process ID (PID) of the CPU or user-defined
virtual processor that you want to debug, execute the onstat command,
as follows:
onstat -g glo
The last section of the output of this onstat command
is similar to the following example.
Typically, the PID circled in the sample output is the one you need. In this example, there are no user-defined virtual processor classes; all the DataBlade routines are marked as well behaved and run in the single instance of the CPU VP.