Runstats-Befehl


[ ruban.de ] [ Antworten ] [ Forum ]

Geschrieben von Markus Hable on März 08, 2004 um 12:04:

Nach Durchführung des Runstats-Befehls für eine Tabelle
ist diese Tabelle anschliessend für Lese- und Schreibzugriffe gesperrt,
bis die Transaktion beendet wurde.

Der Aufruf zur Aktualisierung der Statistik erfolgt aus einem C-Programm
über die Funktion db2Runstats() mit folgenden Optionen

runStatData.iSamplingOption = 0;
runStatData.piColumnList = NULL;
runStatData.piColumnDistributionList = NULL;
runStatData.piColumnGroupList = NULL;
runStatData.piIndexList = NULL;
runStatData.iRunstatsFlags = DB2RUNSTATS_KEY_COLUMNS | DB2RUNSTATS_ALL_INDEXES;
runStatData.iNumColumns = 0;
runStatData.iNumColdist = 0;
runStatData.iNumColGroups = 0;
runStatData.iNumIndexes = 0;
runStatData.iParallelismOption = 0;
runStatData.iTableDefaultFreqValues = 0;
runStatData.iTableDefaultQuantiles = 0;

Laut Dokumentation ist die Erlaubnis für Lese- und Schreibzugriffe die Vorgabe.
Selbst nach expliziter Erlaubnis für Lesezugriffe
sind Lesezugriffe erst nach der Beendung der Transaktion möglich:
runStatData.iRunstatsFlags = DB2RUNSTATS_KEY_COLUMNS | DB2RUNSTATS_ALL_INDEXES |
DB2RUNSTATS_ALLOW_READ;

Warum sind während der Ermittlung der Statistiken keine Lese- und Schreibzugriffe möglich?
Welche Flags sind für die Statistik zu empfehlen?

Gruss Markus


Antworten:


Schreibe eine Antwort

Name:   
E-Mail:  

Thema:

Kommentar:

Optionale Link URL:   
Link Titel:                  
Optionale Image URL:


[ Antworten ] [ Forum ]