├── .github └── workflows │ └── test.yml ├── .gitignore ├── Makefile ├── README.md ├── cmd ├── mutasql │ └── main.go └── sqlancer │ └── main.go ├── go.mod ├── go.sum └── pkg ├── connection ├── connection.go ├── exec.go ├── log.go ├── schema.go ├── sqls.go └── types.go ├── executor ├── ast.go ├── connection.go ├── executor.go ├── generate.go ├── generate_data_item.go ├── generate_data_item_test.go ├── schema.go ├── schema_test.go ├── util.go └── walk.go ├── generator ├── config.go ├── context.go ├── evaluate.go ├── expr.go ├── generator.go ├── generator_test.go ├── hint │ └── hint.go ├── join.go ├── minify.go └── operator │ ├── binary.go │ ├── binary_test.go │ ├── cast.go │ ├── cast_test.go │ ├── comparison.go │ ├── comparison_test.go │ ├── control_flow.go │ ├── control_flow_test.go │ ├── fn.go │ ├── unary.go │ └── unary_test.go ├── knownbugs ├── dustbin.go ├── issue16788.go └── issue16788_test.go ├── logger └── logger.go ├── mutation ├── addition_select.go └── rollback.go ├── mysql └── mysql.go ├── sqlancer ├── config.go ├── config_test.go ├── mutasql.go ├── sqlancer.go └── sqlancer_test.go ├── transformer ├── clause-move.go ├── combine.go ├── no-rec.go ├── tlp.go ├── tlp_test.go ├── transform.go ├── transform_test.go └── union.go ├── types ├── argument.go ├── column.go ├── column_test.go ├── mutasql │ ├── mutasql.go │ └── mutasql_test.go ├── op.go ├── sql.go ├── string.go ├── table.go ├── table_column.go └── table_test.go └── util ├── generator.go ├── math.go ├── pivot.go └── rand.go /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/.gitignore -------------------------------------------------------------------------------- /Makefile: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/Makefile -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/README.md -------------------------------------------------------------------------------- /cmd/mutasql/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/cmd/mutasql/main.go -------------------------------------------------------------------------------- /cmd/sqlancer/main.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/cmd/sqlancer/main.go -------------------------------------------------------------------------------- /go.mod: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/go.mod -------------------------------------------------------------------------------- /go.sum: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/go.sum -------------------------------------------------------------------------------- /pkg/connection/connection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/connection/connection.go -------------------------------------------------------------------------------- /pkg/connection/exec.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/connection/exec.go -------------------------------------------------------------------------------- /pkg/connection/log.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/connection/log.go -------------------------------------------------------------------------------- /pkg/connection/schema.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/connection/schema.go -------------------------------------------------------------------------------- /pkg/connection/sqls.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/connection/sqls.go -------------------------------------------------------------------------------- /pkg/connection/types.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/connection/types.go -------------------------------------------------------------------------------- /pkg/executor/ast.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/ast.go -------------------------------------------------------------------------------- /pkg/executor/connection.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/connection.go -------------------------------------------------------------------------------- /pkg/executor/executor.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/executor.go -------------------------------------------------------------------------------- /pkg/executor/generate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/generate.go -------------------------------------------------------------------------------- /pkg/executor/generate_data_item.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/generate_data_item.go -------------------------------------------------------------------------------- /pkg/executor/generate_data_item_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/generate_data_item_test.go -------------------------------------------------------------------------------- /pkg/executor/schema.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/schema.go -------------------------------------------------------------------------------- /pkg/executor/schema_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/schema_test.go -------------------------------------------------------------------------------- /pkg/executor/util.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/util.go -------------------------------------------------------------------------------- /pkg/executor/walk.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/executor/walk.go -------------------------------------------------------------------------------- /pkg/generator/config.go: -------------------------------------------------------------------------------- 1 | package generator 2 | 3 | type Config struct { 4 | Hint bool 5 | } 6 | -------------------------------------------------------------------------------- /pkg/generator/context.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/context.go -------------------------------------------------------------------------------- /pkg/generator/evaluate.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/evaluate.go -------------------------------------------------------------------------------- /pkg/generator/expr.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/expr.go -------------------------------------------------------------------------------- /pkg/generator/generator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/generator.go -------------------------------------------------------------------------------- /pkg/generator/generator_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/generator_test.go -------------------------------------------------------------------------------- /pkg/generator/hint/hint.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/hint/hint.go -------------------------------------------------------------------------------- /pkg/generator/join.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/join.go -------------------------------------------------------------------------------- /pkg/generator/minify.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/minify.go -------------------------------------------------------------------------------- /pkg/generator/operator/binary.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/binary.go -------------------------------------------------------------------------------- /pkg/generator/operator/binary_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/binary_test.go -------------------------------------------------------------------------------- /pkg/generator/operator/cast.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/cast.go -------------------------------------------------------------------------------- /pkg/generator/operator/cast_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/cast_test.go -------------------------------------------------------------------------------- /pkg/generator/operator/comparison.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/comparison.go -------------------------------------------------------------------------------- /pkg/generator/operator/comparison_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/comparison_test.go -------------------------------------------------------------------------------- /pkg/generator/operator/control_flow.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/control_flow.go -------------------------------------------------------------------------------- /pkg/generator/operator/control_flow_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/control_flow_test.go -------------------------------------------------------------------------------- /pkg/generator/operator/fn.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/fn.go -------------------------------------------------------------------------------- /pkg/generator/operator/unary.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/unary.go -------------------------------------------------------------------------------- /pkg/generator/operator/unary_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/generator/operator/unary_test.go -------------------------------------------------------------------------------- /pkg/knownbugs/dustbin.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/knownbugs/dustbin.go -------------------------------------------------------------------------------- /pkg/knownbugs/issue16788.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/knownbugs/issue16788.go -------------------------------------------------------------------------------- /pkg/knownbugs/issue16788_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/knownbugs/issue16788_test.go -------------------------------------------------------------------------------- /pkg/logger/logger.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/logger/logger.go -------------------------------------------------------------------------------- /pkg/mutation/addition_select.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/mutation/addition_select.go -------------------------------------------------------------------------------- /pkg/mutation/rollback.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/mutation/rollback.go -------------------------------------------------------------------------------- /pkg/mysql/mysql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/mysql/mysql.go -------------------------------------------------------------------------------- /pkg/sqlancer/config.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/sqlancer/config.go -------------------------------------------------------------------------------- /pkg/sqlancer/config_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/sqlancer/config_test.go -------------------------------------------------------------------------------- /pkg/sqlancer/mutasql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/sqlancer/mutasql.go -------------------------------------------------------------------------------- /pkg/sqlancer/sqlancer.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/sqlancer/sqlancer.go -------------------------------------------------------------------------------- /pkg/sqlancer/sqlancer_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/sqlancer/sqlancer_test.go -------------------------------------------------------------------------------- /pkg/transformer/clause-move.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/clause-move.go -------------------------------------------------------------------------------- /pkg/transformer/combine.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/combine.go -------------------------------------------------------------------------------- /pkg/transformer/no-rec.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/no-rec.go -------------------------------------------------------------------------------- /pkg/transformer/tlp.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/tlp.go -------------------------------------------------------------------------------- /pkg/transformer/tlp_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/tlp_test.go -------------------------------------------------------------------------------- /pkg/transformer/transform.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/transform.go -------------------------------------------------------------------------------- /pkg/transformer/transform_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/transform_test.go -------------------------------------------------------------------------------- /pkg/transformer/union.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/transformer/union.go -------------------------------------------------------------------------------- /pkg/types/argument.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/argument.go -------------------------------------------------------------------------------- /pkg/types/column.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/column.go -------------------------------------------------------------------------------- /pkg/types/column_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/column_test.go -------------------------------------------------------------------------------- /pkg/types/mutasql/mutasql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/mutasql/mutasql.go -------------------------------------------------------------------------------- /pkg/types/mutasql/mutasql_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/mutasql/mutasql_test.go -------------------------------------------------------------------------------- /pkg/types/op.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/op.go -------------------------------------------------------------------------------- /pkg/types/sql.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/sql.go -------------------------------------------------------------------------------- /pkg/types/string.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/string.go -------------------------------------------------------------------------------- /pkg/types/table.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/table.go -------------------------------------------------------------------------------- /pkg/types/table_column.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/table_column.go -------------------------------------------------------------------------------- /pkg/types/table_test.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/types/table_test.go -------------------------------------------------------------------------------- /pkg/util/generator.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/util/generator.go -------------------------------------------------------------------------------- /pkg/util/math.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/util/math.go -------------------------------------------------------------------------------- /pkg/util/pivot.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/util/pivot.go -------------------------------------------------------------------------------- /pkg/util/rand.go: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/PingCAP-QE/go-sqlancer/HEAD/pkg/util/rand.go --------------------------------------------------------------------------------