Files
tidb/pkg/ddl/ingest/message.go

86 lines
4.0 KiB
Go

// Copyright 2022 PingCAP, Inc.
//
// Licensed under the Apache License, Version 2.0 (the "License");
// you may not use this file except in compliance with the License.
// You may obtain a copy of the License at
//
// http://www.apache.org/licenses/LICENSE-2.0
//
// Unless required by applicable law or agreed to in writing, software
// distributed under the License is distributed on an "AS IS" BASIS,
// WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
// See the License for the specific language governing permissions and
// limitations under the License.
package ingest
import (
"context"
"github.com/pingcap/tidb/pkg/util/dbterror"
"github.com/pingcap/tidb/pkg/util/logutil"
"go.uber.org/zap"
)
// Message const text
const (
LitErrAllocMemFail string = "allocate memory failed"
LitErrCreateDirFail string = "create ingest sort path error"
LitErrStatDirFail string = "stat ingest sort path error"
LitErrCreateBackendFail string = "build ingest backend failed"
LitErrGetBackendFail string = "cannot get ingest backend"
LitErrCreateEngineFail string = "build ingest engine failed"
LitErrCreateContextFail string = "build ingest writer context failed"
LitErrGetEngineFail string = "can not get ingest engine info"
LitErrGetStorageQuota string = "get storage quota error"
LitErrCloseEngineErr string = "close engine error"
LitErrCleanEngineErr string = "clean engine error"
LitErrFlushEngineErr string = "flush engine data err"
LitErrIngestDataErr string = "ingest data into storage error"
LitErrRemoteDupExistErr string = "remote duplicate index key exist"
LitErrExceedConcurrency string = "the concurrency is greater than ingest limit"
LitErrCloseWriterErr string = "close writer error"
LitErrReadSortPath string = "cannot read sort path"
LitErrCleanSortPath string = "clean up temp dir failed"
LitErrResetEngineFail string = "reset engine failed"
LitWarnEnvInitFail string = "initialize environment failed"
LitWarnConfigError string = "build config for backend failed"
LitInfoEnvInitSucc string = "init global ingest backend environment finished"
LitInfoSortDir string = "the ingest sorted directory"
LitInfoCreateBackend string = "create one backend for an DDL job"
LitInfoCloseBackend string = "close one backend for DDL job"
LitInfoOpenEngine string = "open an engine for index reorg task"
LitInfoCreateWrite string = "create one local writer for index reorg task"
LitInfoCloseEngine string = "flush all writer and get closed engine"
LitInfoRemoteDupCheck string = "start remote duplicate checking"
LitInfoStartImport string = "start to import data"
LitInfoChgMemSetting string = "change memory setting for ingest"
LitInfoInitMemSetting string = "initial memory setting for ingest"
LitInfoUnsafeImport string = "do a partial import data into the storage"
)
func genBackendAllocMemFailedErr(ctx context.Context, memRoot MemRoot, jobID int64) error {
logutil.Logger(ctx).Warn(LitErrAllocMemFail, zap.Int64("job ID", jobID),
zap.Int64("current memory usage", memRoot.CurrentUsage()),
zap.Int64("max memory quota", memRoot.MaxMemoryQuota()))
return dbterror.ErrIngestFailed.FastGenByArgs("memory used up")
}
func genEngineAllocMemFailedErr(ctx context.Context, memRoot MemRoot, jobID int64, idxIDs []int64) error {
logutil.Logger(ctx).Warn(LitErrAllocMemFail,
zap.Int64("job ID", jobID),
zap.Int64s("index IDs", idxIDs),
zap.Int64("current memory usage", memRoot.CurrentUsage()),
zap.Int64("max memory quota", memRoot.MaxMemoryQuota()))
return dbterror.ErrIngestFailed.FastGenByArgs("memory used up")
}
func genWriterAllocMemFailedErr(ctx context.Context, memRoot MemRoot, jobID int64, idxID int64) error {
logutil.Logger(ctx).Warn(LitErrAllocMemFail,
zap.Int64("job ID", jobID),
zap.Int64("index ID", idxID),
zap.Int64("current memory usage", memRoot.CurrentUsage()),
zap.Int64("max memory quota", memRoot.MaxMemoryQuota()))
return dbterror.ErrIngestFailed.FastGenByArgs("memory used up")
}