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
Schreibe eine Antwort
|