// Code generated by go-swagger; DO NOT EDIT.

package models

// This file was generated by the swagger tool.
// Editing this file might prove futile when you re-run the swagger generate command

import (
	"github.com/go-openapi/strfmt"
	"github.com/go-openapi/swag"
)

// CentralSlowQueryDetails central slow query details
//
// swagger:model centralSlowQueryDetails
type CentralSlowQueryDetails struct {

	// backoff time
	BackoffTime float64 `json:"backoff_time,omitempty"`

	// backoff types
	BackoffTypes string `json:"backoff_types,omitempty"`

	// commit backoff time
	CommitBackoffTime float64 `json:"commit_backoff_time,omitempty"`

	// commit time
	CommitTime float64 `json:"commit_time,omitempty"`

	// compile time
	CompileTime float64 `json:"compile_time,omitempty"`

	// connection id
	ConnectionID string `json:"connection_id,omitempty"`

	// cop proc addr
	CopProcAddr string `json:"cop_proc_addr,omitempty"`

	// cop proc avg
	CopProcAvg float64 `json:"cop_proc_avg,omitempty"`

	// cop proc max
	CopProcMax float64 `json:"cop_proc_max,omitempty"`

	// cop proc p90
	CopProcP90 float64 `json:"cop_proc_p90,omitempty"`

	// cop time
	CopTime float64 `json:"cop_time,omitempty"`

	// cop wait addr
	CopWaitAddr string `json:"cop_wait_addr,omitempty"`

	// cop wait avg
	CopWaitAvg float64 `json:"cop_wait_avg,omitempty"`

	// cop wait max
	CopWaitMax float64 `json:"cop_wait_max,omitempty"`

	// cop wait p90
	CopWaitP90 float64 `json:"cop_wait_p90,omitempty"`

	// db
	Db string `json:"db,omitempty"`

	// digest
	Digest string `json:"digest,omitempty"`

	// disk max
	DiskMax int32 `json:"disk_max,omitempty"`

	// exec retry time
	ExecRetryTime float64 `json:"exec_retry_time,omitempty"`

	// get commit ts time
	GetCommitTsTime float64 `json:"get_commit_ts_time,omitempty"`

	// host
	Host string `json:"host,omitempty"`

	// id
	ID string `json:"id,omitempty"`

	// index names
	IndexNames string `json:"index_names,omitempty"`

	// instance
	Instance string `json:"instance,omitempty"`

	// is internal
	IsInternal int32 `json:"is_internal,omitempty"`

	// local latch wait time
	LocalLatchWaitTime float64 `json:"local_latch_wait_time,omitempty"`

	// lock keys time
	LockKeysTime float64 `json:"lock_keys_time,omitempty"`

	// memory max
	MemoryMax int32 `json:"memory_max,omitempty"`

	// optimize time
	OptimizeTime float64 `json:"optimize_time,omitempty"`

	// parse time
	ParseTime float64 `json:"parse_time,omitempty"`

	// plan
	Plan string `json:"plan,omitempty"`

	// preproc subqueries time
	PreprocSubqueriesTime float64 `json:"preproc_subqueries_time,omitempty"`

	// prev stmt
	PrevStmt string `json:"prev_stmt,omitempty"`

	// prewrite region
	PrewriteRegion int32 `json:"prewrite_region,omitempty"`

	// prewrite time
	PrewriteTime float64 `json:"prewrite_time,omitempty"`

	// process keys
	ProcessKeys int32 `json:"process_keys,omitempty"`

	// process time
	ProcessTime float64 `json:"process_time,omitempty"`

	// query
	Query string `json:"query,omitempty"`

	// query time
	QueryTime float64 `json:"query_time,omitempty"`

	// request count
	RequestCount int32 `json:"request_count,omitempty"`

	// resolve lock time
	ResolveLockTime float64 `json:"resolve_lock_time,omitempty"`

	// rewrite time
	RewriteTime float64 `json:"rewrite_time,omitempty"`

	// rocksdb block cache hit count
	RocksdbBlockCacheHitCount int32 `json:"rocksdb_block_cache_hit_count,omitempty"`

	// rocksdb block read byte
	RocksdbBlockReadByte int32 `json:"rocksdb_block_read_byte,omitempty"`

	// rocksdb block read count
	RocksdbBlockReadCount int32 `json:"rocksdb_block_read_count,omitempty"`

	// rocksdb delete skipped count
	RocksdbDeleteSkippedCount int32 `json:"rocksdb_delete_skipped_count,omitempty"`

	// rocksdb key skipped count
	RocksdbKeySkippedCount int32 `json:"rocksdb_key_skipped_count,omitempty"`

	// stats
	Stats string `json:"stats,omitempty"`

	// success
	Success int32 `json:"success,omitempty"`

	// timestamp
	Timestamp float64 `json:"timestamp,omitempty"`

	// total keys
	TotalKeys int32 `json:"total_keys,omitempty"`

	// txn retry
	TxnRetry int32 `json:"txn_retry,omitempty"`

	// txn start ts
	TxnStartTs string `json:"txn_start_ts,omitempty"`

	// user
	User string `json:"user,omitempty"`

	// wait prewrite binlog time
	WaitPrewriteBinlogTime float64 `json:"wait_prewrite_binlog_time,omitempty"`

	// wait time
	WaitTime float64 `json:"wait_time,omitempty"`

	// wait ts
	WaitTs float64 `json:"wait_ts,omitempty"`

	// write keys
	WriteKeys int32 `json:"write_keys,omitempty"`

	// write size
	WriteSize int32 `json:"write_size,omitempty"`

	// write sql response total
	WriteSQLResponseTotal float64 `json:"write_sql_response_total,omitempty"`
}

// Validate validates this central slow query details
func (m *CentralSlowQueryDetails) Validate(formats strfmt.Registry) error {
	return nil
}

// MarshalBinary interface implementation
func (m *CentralSlowQueryDetails) MarshalBinary() ([]byte, error) {
	if m == nil {
		return nil, nil
	}
	return swag.WriteJSON(m)
}

// UnmarshalBinary interface implementation
func (m *CentralSlowQueryDetails) UnmarshalBinary(b []byte) error {
	var res CentralSlowQueryDetails
	if err := swag.ReadJSON(b, &res); err != nil {
		return err
	}
	*m = res
	return nil
}
