ssmpipc.cpp

Clone Tools
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
RMS and other related changes

The process level statistics at ESP level can now be obtained

using RMS while the query is running. The SQL command is

select * from table(statistics(null, 'QID=<qid>,DETAIL=1'))

To get a list of ESPs processes participating in the query execution, issue

select distinct tdb_id, text process_name from

table(statistics(null, 'QID=<qid>,DETAIL=1')) order by tdb_id

Explain information can now be obtained using RMS. To do this

CQD EXPLAIN_IN_RMS 'ON' should be issued in the session before the

query is prepared.

EXPLAIN OPTIONS 'F' FOR QID <qid> from a different session can give

the explain info.

TESTRTS is now incorporated into core test suite.

AQR-ed queries were not getting garbage collected from RMS shared segment.

This has been fixed.

Missing code in IpcGuardinServer::serverDied method is now added.

Change-Id: Ib591ee5c9251ab6778e3dec9450f5b0466041e9b

  1. … 15 more files in changeset.
SQL support for phandle verifier, etc.

Changes to use phandle verifier from foundation to distinguish

processes when pids are recycled. Remove some workarounds which

attempted to use process creation timestamps to do the same

thing. Also, use msg_mon_node_down2 to log the reason why the

node is brought down. And removed some unneeded special case

code to free the shared segment semaphore at the startup of

mxssmp.

Change-Id: I4914a26680535222504ecf552fb539b1a817c850

  1. … 21 more files in changeset.
Changes to defend RMS memory segment corruption

Added code to avoid memory corruption in the RMS shared segment by making

the rogue process to dump core if it doesn't adhere to rules of access to the

RMS shared segment.

Enabled seabase/TEST024

Change-Id: Ibb0bbbc9f4617da30bca9a7129d016079ac2fdbe

  1. … 12 more files in changeset.
Enable RMS monitoring

The query execution statistics can now be obtained while the query is running

via

a) GET STATISTICS FOR QID <qid>

b) Using STATISTICS table-valued function

c) Using CLI calls – SQL_EXEC_GetStatistics2 and SQL_EXEC_GetStatisticsItems

The statistics can be viewed in accumulated, pertable, progress and operator

stats format.

You can also obtain statistics for each fragment instance and process wise

statistics for each operator of an active query.

Light-weight SQL Offender (LSO) feature is also enabled. With LSO, you can get

1. Queries offending CPU resource

2. Queries blocked in Trafodion Engine

3. Queries that are not active

4. Queries that haven’t finished but blocked in client

5. Queries offending memory resource

Explain in RMS feature can be enabled by setting the

cqd explain_in_rms ‘on’ before compiling a query.

EXPLAIN.. FOR QID <qid> command is now supported.

GET PROCESS STATISTICS FOR <pid> is also supported

Change-Id: I59eb54dd4fd347a37e0b7e7842ee242e553ef60d

  1. … 48 more files in changeset.
Enable basic Runtime Management System (RMS)

The goal of these initial changes is to get the shared memory

segment created, build and start the persistent server processes

mxssmp and mxsscp, make EXE processes register in the shared segment

and let mxssmp cleanup the shared segment as the processes stop.

Later I will address specific features of RMS that support

Query Invalidation.

Change-Id: Ib3dd10525b6073d32d1e362f301afe9c88012647

Implements: blueprint enable-rms-infrastructure

  1. … 27 more files in changeset.