stmtsummary

package
v1.1.0-beta.0...-aa19d3f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Dec 18, 2024 License: Apache-2.0 Imports: 29 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ClusterTableInstanceColumnNameStr = "INSTANCE"
	SummaryBeginTimeStr               = "SUMMARY_BEGIN_TIME"
	SummaryEndTimeStr                 = "SUMMARY_END_TIME"
	StmtTypeStr                       = "STMT_TYPE"
	SchemaNameStr                     = "SCHEMA_NAME"
	DigestStr                         = "DIGEST"
	DigestTextStr                     = "DIGEST_TEXT"
	TableNamesStr                     = "TABLE_NAMES"
	IndexNamesStr                     = "INDEX_NAMES"
	SampleUserStr                     = "SAMPLE_USER"
	ExecCountStr                      = "EXEC_COUNT"
	SumErrorsStr                      = "SUM_ERRORS"
	SumWarningsStr                    = "SUM_WARNINGS"
	SumLatencyStr                     = "SUM_LATENCY"
	MaxLatencyStr                     = "MAX_LATENCY"
	MinLatencyStr                     = "MIN_LATENCY"
	AvgLatencyStr                     = "AVG_LATENCY"
	AvgParseLatencyStr                = "AVG_PARSE_LATENCY"
	MaxParseLatencyStr                = "MAX_PARSE_LATENCY"
	AvgCompileLatencyStr              = "AVG_COMPILE_LATENCY"
	MaxCompileLatencyStr              = "MAX_COMPILE_LATENCY"
	SumCopTaskNumStr                  = "SUM_COP_TASK_NUM"
	MaxCopProcessTimeStr              = "MAX_COP_PROCESS_TIME"
	MaxCopProcessAddressStr           = "MAX_COP_PROCESS_ADDRESS"
	MaxCopWaitTimeStr                 = "MAX_COP_WAIT_TIME"    // #nosec G101
	MaxCopWaitAddressStr              = "MAX_COP_WAIT_ADDRESS" // #nosec G101
	AvgProcessTimeStr                 = "AVG_PROCESS_TIME"
	MaxProcessTimeStr                 = "MAX_PROCESS_TIME"
	AvgWaitTimeStr                    = "AVG_WAIT_TIME"
	MaxWaitTimeStr                    = "MAX_WAIT_TIME"
	AvgBackoffTimeStr                 = "AVG_BACKOFF_TIME"
	MaxBackoffTimeStr                 = "MAX_BACKOFF_TIME"
	AvgTotalKeysStr                   = "AVG_TOTAL_KEYS"
	MaxTotalKeysStr                   = "MAX_TOTAL_KEYS"
	AvgProcessedKeysStr               = "AVG_PROCESSED_KEYS"
	MaxProcessedKeysStr               = "MAX_PROCESSED_KEYS"
	AvgRocksdbDeleteSkippedCountStr   = "AVG_ROCKSDB_DELETE_SKIPPED_COUNT"
	MaxRocksdbDeleteSkippedCountStr   = "MAX_ROCKSDB_DELETE_SKIPPED_COUNT"
	AvgRocksdbKeySkippedCountStr      = "AVG_ROCKSDB_KEY_SKIPPED_COUNT"
	MaxRocksdbKeySkippedCountStr      = "MAX_ROCKSDB_KEY_SKIPPED_COUNT"
	AvgRocksdbBlockCacheHitCountStr   = "AVG_ROCKSDB_BLOCK_CACHE_HIT_COUNT"
	MaxRocksdbBlockCacheHitCountStr   = "MAX_ROCKSDB_BLOCK_CACHE_HIT_COUNT"
	AvgRocksdbBlockReadCountStr       = "AVG_ROCKSDB_BLOCK_READ_COUNT"
	MaxRocksdbBlockReadCountStr       = "MAX_ROCKSDB_BLOCK_READ_COUNT"
	AvgRocksdbBlockReadByteStr        = "AVG_ROCKSDB_BLOCK_READ_BYTE"
	MaxRocksdbBlockReadByteStr        = "MAX_ROCKSDB_BLOCK_READ_BYTE"
	AvgPrewriteTimeStr                = "AVG_PREWRITE_TIME"
	MaxPrewriteTimeStr                = "MAX_PREWRITE_TIME"
	AvgCommitTimeStr                  = "AVG_COMMIT_TIME"
	MaxCommitTimeStr                  = "MAX_COMMIT_TIME"
	AvgGetCommitTsTimeStr             = "AVG_GET_COMMIT_TS_TIME"
	MaxGetCommitTsTimeStr             = "MAX_GET_COMMIT_TS_TIME"
	AvgCommitBackoffTimeStr           = "AVG_COMMIT_BACKOFF_TIME"
	MaxCommitBackoffTimeStr           = "MAX_COMMIT_BACKOFF_TIME"
	AvgResolveLockTimeStr             = "AVG_RESOLVE_LOCK_TIME"
	MaxResolveLockTimeStr             = "MAX_RESOLVE_LOCK_TIME"
	AvgLocalLatchWaitTimeStr          = "AVG_LOCAL_LATCH_WAIT_TIME"
	MaxLocalLatchWaitTimeStr          = "MAX_LOCAL_LATCH_WAIT_TIME"
	AvgWriteKeysStr                   = "AVG_WRITE_KEYS"
	MaxWriteKeysStr                   = "MAX_WRITE_KEYS"
	AvgWriteSizeStr                   = "AVG_WRITE_SIZE"
	MaxWriteSizeStr                   = "MAX_WRITE_SIZE"
	AvgPrewriteRegionsStr             = "AVG_PREWRITE_REGIONS"
	MaxPrewriteRegionsStr             = "MAX_PREWRITE_REGIONS"
	AvgTxnRetryStr                    = "AVG_TXN_RETRY"
	MaxTxnRetryStr                    = "MAX_TXN_RETRY"
	SumExecRetryStr                   = "SUM_EXEC_RETRY"
	SumExecRetryTimeStr               = "SUM_EXEC_RETRY_TIME"
	SumBackoffTimesStr                = "SUM_BACKOFF_TIMES"
	BackoffTypesStr                   = "BACKOFF_TYPES"
	AvgMemStr                         = "AVG_MEM"
	MaxMemStr                         = "MAX_MEM"
	AvgDiskStr                        = "AVG_DISK"
	MaxDiskStr                        = "MAX_DISK"
	AvgKvTimeStr                      = "AVG_KV_TIME"
	AvgPdTimeStr                      = "AVG_PD_TIME"
	AvgBackoffTotalTimeStr            = "AVG_BACKOFF_TOTAL_TIME"
	AvgWriteSQLRespTimeStr            = "AVG_WRITE_SQL_RESP_TIME"
	AvgTidbCPUTimeStr                 = "AVG_TIDB_CPU_TIME"
	AvgTikvCPUTimeStr                 = "AVG_TIKV_CPU_TIME"
	MaxResultRowsStr                  = "MAX_RESULT_ROWS"
	MinResultRowsStr                  = "MIN_RESULT_ROWS"
	AvgResultRowsStr                  = "AVG_RESULT_ROWS"
	PreparedStr                       = "PREPARED"
	AvgAffectedRowsStr                = "AVG_AFFECTED_ROWS"
	FirstSeenStr                      = "FIRST_SEEN"
	LastSeenStr                       = "LAST_SEEN"
	PlanInCacheStr                    = "PLAN_IN_CACHE"
	PlanCacheHitsStr                  = "PLAN_CACHE_HITS"
	PlanCacheUnqualifiedStr           = "PLAN_CACHE_UNQUALIFIED"
	PlanCacheUnqualifiedLastReasonStr = "PLAN_CACHE_UNQUALIFIED_LAST_REASON"
	PlanInBindingStr                  = "PLAN_IN_BINDING"
	QuerySampleTextStr                = "QUERY_SAMPLE_TEXT"
	PrevSampleTextStr                 = "PREV_SAMPLE_TEXT"
	PlanDigestStr                     = "PLAN_DIGEST"
	PlanStr                           = "PLAN"
	BinaryPlan                        = "BINARY_PLAN"
	Charset                           = "CHARSET"
	Collation                         = "COLLATION"
	PlanHint                          = "PLAN_HINT"
	AvgRequestUnitReadStr             = "AVG_REQUEST_UNIT_READ"
	MaxRequestUnitReadStr             = "MAX_REQUEST_UNIT_READ"
	AvgRequestUnitWriteStr            = "AVG_REQUEST_UNIT_WRITE"
	MaxRequestUnitWriteStr            = "MAX_REQUEST_UNIT_WRITE"
	AvgQueuedRcTimeStr                = "AVG_QUEUED_RC_TIME"
	MaxQueuedRcTimeStr                = "MAX_QUEUED_RC_TIME"
	ResourceGroupName                 = "RESOURCE_GROUP"
)

Statements summary table column name.

View Source
const (
	ErrorsStr                    = "ERRORS"
	WarningsStr                  = "WARNINGS"
	MemStr                       = "MEM"
	DiskStr                      = "DISK"
	TotalTimeStr                 = "TOTAL_TIME"
	ParseTimeStr                 = "PARSE_TIME"
	CompileTimeStr               = "COMPILE_TIME"
	CopTaskNumStr                = "COP_TASK_NUM"
	CopProcessTimeStr            = "COP_PROCESS_TIME"
	CopWaitTimeStr               = "COP_WAIT_TIME"
	PdTimeStr                    = "PD_TIME"
	KvTimeStr                    = "KV_TIME"
	ProcessTimeStr               = "PROCESS_TIME"
	WaitTimeStr                  = "WAIT_TIME"
	BackoffTimeStr               = "BACKOFF_TIME"
	TotalKeysStr                 = "TOTAL_KEYS"
	ProcessedKeysStr             = "PROCESSED_KEYS"
	RocksdbDeleteSkippedCountStr = "ROCKSDB_DELETE_SKIPPED_COUNT"
	RocksdbKeySkippedCountStr    = "ROCKSDB_KEY_SKIPPED_COUNT"
	RocksdbBlockCacheHitCountStr = "ROCKSDB_BLOCK_CACHE_HIT_COUNT"
	RocksdbBlockReadCountStr     = "ROCKSDB_BLOCK_READ_COUNT"
	RocksdbBlockReadByteStr      = "ROCKSDB_BLOCK_READ_BYTE"
	PrewriteTimeStr              = "PREWRITE_TIME"
	CommitTimeStr                = "COMMIT_TIME"
	CommitTsTimeStr              = "COMMIT_TS_TIME"
	CommitBackoffTimeStr         = "COMMIT_BACKOFF_TIME"
	ResolveLockTimeStr           = "RESOLVE_LOCK_TIME"
	LocalLatchWaitTimeStr        = "LOCAL_LATCH_WAIT_TIME"
	WriteKeysStr                 = "WRITE_KEYS"
	WriteSizeStr                 = "WRITE_SIZE"
	PrewriteRegionsStr           = "PREWRITE_REGIONS"
	TxnRetryStr                  = "TXN_RETRY"
	ExecRetryStr                 = "EXEC_RETRY"
	ExecRetryTimeStr             = "EXEC_RETRY_TIME"
	BackoffTimesStr              = "BACKOFF_TIMES"
	BackoffTotalTimeStr          = "BACKOFF_TOTAL_TIME"
	WriteSQLRespTimeStr          = "WRITE_SQL_RESP_TIME"
	ResultRowsStr                = "RESULT_ROWS"
	AffectedRowsStr              = "AFFECTED_ROWS"
	RequestUnitReadStr           = "REQUEST_UNIT_READ"
	RequestUnitWriteStr          = "REQUEST_UNIT_WRITE"
	QueuedRcTimeStr              = "QUEUED_RC_TIME"
)

Column names for the statement stats table, including columns that have been renamed from their equivalent columns in the statement summary table.

Variables

View Source
var MaxEncodedPlanSizeInBytes = 1024 * 1024

MaxEncodedPlanSizeInBytes is the upper limit of the size of the plan and the binary plan in the stmt summary.

View Source
var StmtSummaryByDigestMap = newStmtSummaryByDigestMap()

StmtSummaryByDigestMap is a global map containing all statement summaries.

Functions

func NewStmtSummaryChecker

func NewStmtSummaryChecker(digests set.StringSet) *stmtSummaryChecker

NewStmtSummaryChecker return a new statement summaries checker.

func NewStmtSummaryReader

func NewStmtSummaryReader(user *auth.UserIdentity, hasProcessPriv bool, cols []*model.ColumnInfo, instanceAddr string, tz *time.Location) *stmtSummaryReader

NewStmtSummaryReader return a new statement summaries reader.

Types

type BindableStmt

type BindableStmt struct {
	Schema    string
	Query     string
	PlanHint  string
	Charset   string
	Collation string
	Users     map[string]struct{} // which users have processed this stmt
}

BindableStmt is a wrapper struct for a statement that is extracted from statements_summary and can be created binding on.

func GetBindableStmtFromCluster

func GetBindableStmtFromCluster(rows []chunk.Row) *BindableStmt

GetBindableStmtFromCluster gets users' select/update/delete SQL.

type StmtExecInfo

type StmtExecInfo struct {
	SchemaName     string
	Charset        string
	Collation      string
	NormalizedSQL  string
	Digest         string
	PrevSQL        string
	PrevSQLDigest  string
	PlanDigest     string
	User           string
	TotalLatency   time.Duration
	ParseLatency   time.Duration
	CompileLatency time.Duration
	StmtCtx        *stmtctx.StatementContext
	CopTasks       *execdetails.CopTasksDetails
	ExecDetail     execdetails.ExecDetails
	MemMax         int64
	DiskMax        int64
	StartTime      time.Time
	IsInternal     bool
	Succeed        bool
	PlanInCache    bool
	PlanInBinding  bool
	ExecRetryCount uint
	ExecRetryTime  time.Duration
	execdetails.StmtExecDetails
	ResultRows        int64
	TiKVExecDetails   util.ExecDetails
	Prepared          bool
	KeyspaceName      string
	KeyspaceID        uint32
	ResourceGroupName string
	RUDetail          *util.RUDetails
	CPUUsages         ppcpuusage.CPUUsages

	PlanCacheUnqualified string

	LazyInfo StmtExecLazyInfo
}

StmtExecInfo records execution information of each statement.

type StmtExecLazyInfo

type StmtExecLazyInfo interface {
	GetOriginalSQL() string
	GetEncodedPlan() (string, string, any)
	GetBinaryPlan() string
	GetPlanDigest() string
}

StmtExecLazyInfo is the interface about getting lazy information for StmtExecInfo.

type StmtRUSummary

type StmtRUSummary struct {
	SumRRU            float64       `json:"sum_rru"`
	SumWRU            float64       `json:"sum_wru"`
	SumRUWaitDuration time.Duration `json:"sum_ru_wait_duration"`
	MaxRRU            float64       `json:"max_rru"`
	MaxWRU            float64       `json:"max_wru"`
	MaxRUWaitDuration time.Duration `json:"max_ru_wait_duration"`
}

StmtRUSummary is the request-units summary for each type of statements.

func (*StmtRUSummary) Add

func (s *StmtRUSummary) Add(info *util.RUDetails)

Add add a new sample value to the ru summary record.

func (*StmtRUSummary) Merge

func (s *StmtRUSummary) Merge(other *StmtRUSummary)

Merge merges the value of 2 ru summary records.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL