env

package
v0.11.1 Latest Latest
Warning

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

Go to latest
Published: Mar 26, 2024 License: Apache-2.0 Imports: 8 Imported by: 0

Documentation

Overview

Package env contain virtual database build, rehash, cleanup.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func ChangeDB

func ChangeDB(env *database.Connector, sql string)

ChangeDB use db change dsn Database

func CurrentDB

func CurrentDB(sql, db string) string

Types

type VirtualEnv

type VirtualEnv struct {
	*database.Connector

	// 保存 DB 测试环境映射关系,防止 vEnv 环境冲突。
	DBRef   map[string]string // db -> optimizer_xxx
	Hash2DB map[string]string // optimizer_xxx -> db
	// 保存 Table 创建关系,防止重复创建表
	TableMap map[string]map[string]string
	// 错误
	Error error
}

VirtualEnv SQL优化评审 测试环境 DB使用的信息从配置文件中获取

func BuildEnv

func BuildEnv() (*VirtualEnv, *database.Connector)

BuildEnv 测试环境初始化&连接线上环境检查 @output *VirtualEnv 测试环境 @output *database.Connector 线上环境连接句柄

func NewVirtualEnv

func NewVirtualEnv(vEnv *database.Connector) *VirtualEnv

NewVirtualEnv 初始化一个新的测试环境

func (*VirtualEnv) BuildVirtualEnv

func (vEnv *VirtualEnv) BuildVirtualEnv(rEnv *database.Connector, SQLs ...string) bool

BuildVirtualEnv rEnv 为 SQL 源环境,DB 使用的信息从接口获取 注意:如果是 USE, DDL 等语句,执行完第一条就会返回,后面的 SQL 不会执行

func (*VirtualEnv) CleanUp

func (vEnv *VirtualEnv) CleanUp() bool

CleanUp 环境清理

func (*VirtualEnv) CleanupTestDatabase

func (vEnv *VirtualEnv) CleanupTestDatabase()

CleanupTestDatabase 清除一小时前的环境

func (*VirtualEnv) DBHash

func (vEnv *VirtualEnv) DBHash(db string) string

DBHash 从测试环境中根据 DB 找到对应的 hash 值

func (*VirtualEnv) GenTableColumns

func (vEnv *VirtualEnv) GenTableColumns(meta common.Meta) common.TableColumns

GenTableColumns 为 Rewrite 提供的结构体初始化

func (*VirtualEnv) RealDB

func (vEnv *VirtualEnv) RealDB(hash string) string

RealDB 从测试环境中获取通过 hash 后的 DB

Jump to

Keyboard shortcuts

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