tree: 4ca65c1c547f612bffd211504bb1588c495d30ee
  1. minidump.conf
  2. nereids_ut.sh
  3. README.md
minidump/README.md

Tutorial of Nereids minidump

Minidump is a basic dump file for Nereids optimizer which arms
to replay problems and used as unit test tool for developers.
It include minimal necessary informations for Nereids optimizer
to replay a scenario in Optimizer.

Save minidump file

In two cases fe would save minidump file

  • when query throw an exception
  • when use ‘set enable_minidump=true;’ switch by User

File structure of minidump file

Minidump files would save in $DORIS_HOME/log/minidump path
and named by queryId like: c9bf82b70ce34c28-8d281e31412f3ee6.json
File structure of minidump file includes:

keyValue
Sqloriginal sql string
SessionVariablessessionVariables different than default
DatabaseNamedatabase name
Tablesschemas in table, partition info and some table properties
ColocateTableIndextable distribute informations
ColumnStatisticsall ColumnStatistics in table
Histogramall histogram information in table
ParsedPlanplan after parsed in json format
ResultPlanplan after all optimized in json format

Use of nereids_ut.sh

When we want to use this shell, we need to go to output/fe/minidump path
Now only one parameter is allowed for this shell which is directory
of minidump files like $DORIS_HOME/log/minidump

cd output/fe/minidump
./nereids_ut.sh --d $minidump_files_path

The running reports can be found in output/fe/minidump/log
which is minidump.out