Skip to content

Commit 97ca0b8

Browse files
committed
Tables and types with hooks/overrides
1 parent fb85009 commit 97ca0b8

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

71 files changed

+786
-253
lines changed

_example/main.go

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -57,7 +57,7 @@ func main() {
5757
engine := sqle.NewDefault(pro)
5858

5959
session := memory.NewSession(sql.NewBaseSession(), pro)
60-
ctx := sql.NewContext(context.Background(), sql.WithSession(session))
60+
ctx := sql.NewNonEngineContext(context.Background(), sql.WithSession(session))
6161
ctx.SetCurrentDatabase(dbName)
6262

6363
// This variable may be found in the "users_example.go" file. Please refer to that file for a walkthrough on how to
@@ -73,7 +73,7 @@ func main() {
7373
Protocol: "tcp",
7474
Address: fmt.Sprintf("%s:%d", address, port),
7575
}
76-
s, err := server.NewServer(config, engine, sql.NewContext, memory.NewSessionBuilder(pro), nil)
76+
s, err := server.NewServer(config, engine, sql.NewNonEngineContext, memory.NewSessionBuilder(pro), nil)
7777
if err != nil {
7878
panic(err)
7979
}
@@ -88,7 +88,8 @@ func createTestDatabase() *memory.DbProvider {
8888

8989
pro := memory.NewDBProvider(db)
9090
session := memory.NewSession(sql.NewBaseSession(), pro)
91-
ctx := sql.NewContext(context.Background(), sql.WithSession(session))
91+
ctx := sql.NewNonEngineContext(context.Background(), sql.WithSession(session))
92+
ctx.Session = session
9293

9394
table := memory.NewTable(db, tableName, sql.NewPrimaryKeySchema(sql.Schema{
9495
{Name: "name", Type: types.Text, Nullable: false, Source: tableName, PrimaryKey: true},

driver/_example/create.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@ func createTestDatabase() *memory.Database {
4141

4242
db := memory.NewDatabase(dbName)
4343
pro := memory.NewDBProvider(db)
44-
ctx := sql.NewContext(context.Background(), sql.WithSession(memory.NewSession(sql.NewBaseSession(), pro)))
44+
ctx := sql.NewNonEngineContext(context.Background(), sql.WithSession(memory.NewSession(sql.NewBaseSession(), pro)))
4545

4646
table := memory.NewTable(db, tableName, sql.NewPrimaryKeySchema(sql.Schema{
4747
{Name: "name", Type: types.Text, Nullable: false, Source: tableName},

driver/context.go

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ type ContextBuilder interface {
1515
// DefaultContextBuilder creates basic SQL contexts.
1616
type DefaultContextBuilder struct{}
1717

18-
// NewContext calls sql.NewContext.
18+
// NewContext calls sql.NewNonEngineContext.
1919
func (DefaultContextBuilder) NewContext(ctx context.Context, conn *Conn, opts ...sql.ContextOption) (*sql.Context, error) {
20-
return sql.NewContext(ctx, opts...), nil
20+
return sql.NewNonEngineContext(ctx, opts...), nil
2121
}

driver/driver.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -162,7 +162,7 @@ func (d *Driver) OpenConnector(dsn string) (driver.Connector, error) {
162162
d.mu.Lock()
163163
db, ok := d.dbs[serverName]
164164
if !ok {
165-
anlz := analyzer.NewDefaultWithVersion(pro)
165+
anlz := analyzer.NewDefault(pro)
166166
engine := sqle.New(anlz, nil)
167167
db = &dbConn{engine: engine}
168168
d.dbs[serverName] = db

driver/fixtures_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -64,5 +64,5 @@ func personMemTable(database, table string) (*memTable, Records) {
6464
}
6565

6666
func newContext(provider *memory.DbProvider) *sql.Context {
67-
return sql.NewContext(context.Background(), sql.WithSession(memory.NewSession(sql.NewBaseSession(), provider)))
67+
return sql.NewNonEngineContext(context.Background(), sql.WithSession(memory.NewSession(sql.NewBaseSession(), provider)))
6868
}

engine.go

Lines changed: 15 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -32,6 +32,7 @@ import (
3232
"github.com/dolthub/go-mysql-server/sql/analyzer"
3333
"github.com/dolthub/go-mysql-server/sql/expression"
3434
"github.com/dolthub/go-mysql-server/sql/expression/function"
35+
_ "github.com/dolthub/go-mysql-server/sql/hooks/noop"
3536
"github.com/dolthub/go-mysql-server/sql/plan"
3637
"github.com/dolthub/go-mysql-server/sql/planbuilder"
3738
"github.com/dolthub/go-mysql-server/sql/rowexec"
@@ -63,6 +64,13 @@ type Config struct {
6364
// IncludeRootAccount adds the root account (with no password) to the list of accounts, and also enables
6465
// authentication.
6566
IncludeRootAccount bool
67+
Overrides EngineOverrides
68+
}
69+
70+
// EngineOverrides contains functions and variables that can replace, supplement, or override functionality within the
71+
// various engine phases (such as the analysis, node execution, etc.).
72+
type EngineOverrides struct {
73+
Builder planbuilder.BuilderOverrides
6674
}
6775

6876
// TemporaryUser is a user that will be added to the engine. This is for temporary use while the remaining features
@@ -139,6 +147,7 @@ type Engine struct {
139147
Parser sql.Parser
140148
ProcessList sql.ProcessList
141149
Analyzer *analyzer.Analyzer
150+
Overrides EngineOverrides
142151
LS *sql.LockSubsystem
143152
MemoryManager *sql.MemoryManager
144153
BackgroundThreads *sql.BackgroundThreads
@@ -188,6 +197,7 @@ func New(a *analyzer.Analyzer, cfg *Config) *Engine {
188197
Analyzer: a,
189198
MemoryManager: sql.NewMemoryManager(sql.ProcessMemory),
190199
ProcessList: NewProcessList(),
200+
Overrides: cfg.Overrides,
191201
LS: ls,
192202
BackgroundThreads: sql.NewBackgroundThreads(),
193203
IsServerLocked: cfg.IsServerLocked,
@@ -203,16 +213,15 @@ func New(a *analyzer.Analyzer, cfg *Config) *Engine {
203213

204214
// NewDefault creates a new default Engine.
205215
func NewDefault(pro sql.DatabaseProvider) *Engine {
206-
a := analyzer.NewDefaultWithVersion(pro)
207-
return New(a, nil)
216+
return New(analyzer.NewDefault(pro), nil)
208217
}
209218

210219
// AnalyzeQuery analyzes a query and returns its sql.Node
211220
func (e *Engine) AnalyzeQuery(
212221
ctx *sql.Context,
213222
query string,
214223
) (sql.Node, error) {
215-
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser)
224+
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser, e.Overrides.Builder)
216225
parsed, _, _, qFlags, err := binder.Parse(query, nil, false)
217226
if err != nil {
218227
return nil, err
@@ -243,7 +252,7 @@ func (e *Engine) PrepareParsedQuery(
243252
// Make sure there is an active transaction if one hasn't been started yet
244253
e.beginTransaction(ctx)
245254

246-
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser)
255+
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser, e.Overrides.Builder)
247256
node, _, err := binder.BindOnly(stmt, query, nil)
248257

249258
if err != nil {
@@ -526,7 +535,7 @@ func (e *Engine) BoundQueryPlan(ctx *sql.Context, query string, parsed sqlparser
526535

527536
query = sql.RemoveSpaceAndDelimiter(query, ';')
528537

529-
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser)
538+
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser, e.Overrides.Builder)
530539
binder.SetBindings(bindings)
531540

532541
// Begin a transaction if necessary (no-op if one is in flight)
@@ -580,7 +589,7 @@ func (e *Engine) preparedStatement(ctx *sql.Context, query string, parsed sqlpar
580589
preparedAst, preparedDataFound = e.PreparedDataCache.GetCachedStmt(ctx.Session.ID(), query)
581590
}
582591

583-
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser)
592+
binder := planbuilder.New(ctx, e.Analyzer.Catalog, e.EventScheduler, e.Parser, e.Overrides.Builder)
584593
if preparedDataFound {
585594
parsed = preparedAst
586595
binder.SetBindings(bindings)

engine_test.go

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -191,7 +191,7 @@ func TestTrackProcess(t *testing.T) {
191191

192192
pl := NewProcessList()
193193

194-
ctx := sql.NewContext(context.Background(), sql.WithPid(1), sql.WithProcessList(pl), sql.WithSession(sess))
194+
ctx := sql.NewNonEngineContext(context.Background(), sql.WithPid(1), sql.WithProcessList(pl), sql.WithSession(sess))
195195
pl.AddConnection(ctx.Session.ID(), "localhost")
196196
pl.ConnectionReady(ctx.Session)
197197
ctx, err := ctx.ProcessList.BeginQuery(ctx, "SELECT foo")

enginetest/engine_only_test.go

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -247,7 +247,7 @@ func TestShowProcessList(t *testing.T) {
247247
p.AddConnection(2, addr2)
248248
sess := sql.NewBaseSessionWithClientServer("0.0.0.0:3306", sql.Client{Address: addr1, User: username}, 1)
249249
p.ConnectionReady(sess)
250-
ctx := sql.NewContext(context.Background(), sql.WithPid(1), sql.WithSession(sess), sql.WithProcessList(p))
250+
ctx := sql.NewNonEngineContext(context.Background(), sql.WithPid(1), sql.WithSession(sess), sql.WithProcessList(p))
251251

252252
ctx, err := p.BeginQuery(ctx, "SELECT foo")
253253
require.NoError(err)
@@ -257,7 +257,7 @@ func TestShowProcessList(t *testing.T) {
257257

258258
sess = sql.NewBaseSessionWithClientServer("0.0.0.0:3306", sql.Client{Address: addr2, User: username}, 2)
259259
p.ConnectionReady(sess)
260-
ctx = sql.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess), sql.WithProcessList(p))
260+
ctx = sql.NewNonEngineContext(context.Background(), sql.WithPid(2), sql.WithSession(sess), sql.WithProcessList(p))
261261
ctx, err = p.BeginQuery(ctx, "SELECT bar")
262262
require.NoError(err)
263263

@@ -352,7 +352,7 @@ func TestUnlockTables(t *testing.T) {
352352

353353
catalog := analyzer.NewCatalog(sql.NewDatabaseProvider(db))
354354

355-
ctx := sql.NewContext(context.Background())
355+
ctx := sql.NewNonEngineContext(context.Background())
356356
ctx.SetCurrentDatabase("db")
357357
catalog.LockTable(ctx, "foo")
358358
catalog.LockTable(ctx, "bar")
@@ -438,7 +438,7 @@ func TestAnalyzer_Exp(t *testing.T) {
438438
require.NoError(t, err)
439439

440440
ctx := enginetest.NewContext(harness)
441-
b := planbuilder.New(ctx, e.EngineAnalyzer().Catalog, e.EngineEventScheduler(), nil)
441+
b := planbuilder.New(ctx, e.EngineAnalyzer().Catalog, e.EngineEventScheduler(), nil, planbuilder.BuilderOverrides{})
442442
parsed, _, _, _, err := b.Parse(tt.query, nil, false)
443443
require.NoError(t, err)
444444

@@ -1078,7 +1078,7 @@ func newDatabase() (*sql2.DB, func()) {
10781078
Protocol: "tcp",
10791079
Address: fmt.Sprintf("localhost:%d", port),
10801080
}
1081-
srv, err := server.NewServer(cfg, engine, sql.NewContext, harness.SessionBuilder(), nil)
1081+
srv, err := server.NewServer(cfg, engine, sql.NewNonEngineContext, harness.SessionBuilder(), nil)
10821082
if err != nil {
10831083
panic(err)
10841084
}

enginetest/enginetests.go

Lines changed: 24 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -325,7 +325,7 @@ func TestInfoSchema(t *testing.T, h Harness) {
325325
sess2 := sql.NewBaseSessionWithClientServer("localhost", sql.Client{Address: "otherhost", User: "root"}, 2)
326326
sess2.SetCurrentDatabase("otherdb")
327327
p.ConnectionReady(sess2)
328-
ctx2 := sql.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
328+
ctx2 := ctx.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
329329
ctx2, err = p.BeginQuery(ctx2, "SELECT bar")
330330
require.NoError(t, err)
331331
p.EndQuery(ctx2)
@@ -361,7 +361,7 @@ func TestInfoSchema(t *testing.T, h Harness) {
361361
sess2 := sql.NewBaseSessionWithClientServer("localhost", sql.Client{Address: "otherhost", User: "root"}, 2)
362362
sess2.SetCurrentDatabase("otherdb")
363363
p.ConnectionReady(sess2)
364-
ctx2 := sql.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
364+
ctx2 := ctx.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
365365
ctx2, err = p.BeginQuery(ctx2, "SELECT bar")
366366
require.NoError(t, err)
367367
p.EndQuery(ctx2)
@@ -406,7 +406,7 @@ func TestInfoSchema(t *testing.T, h Harness) {
406406
sess2 := sql.NewBaseSessionWithClientServer("localhost", sql.Client{Address: "otherhost", User: "root"}, 2)
407407
sess2.SetCurrentDatabase("otherdb")
408408
p.ConnectionReady(sess2)
409-
ctx2 := sql.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
409+
ctx2 := ctx.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
410410
ctx2, err = p.BeginQuery(ctx2, "SELECT bar")
411411
require.NoError(t, err)
412412
p.EndQuery(ctx2)
@@ -451,7 +451,7 @@ func TestInfoSchema(t *testing.T, h Harness) {
451451
sess2 := sql.NewBaseSessionWithClientServer("localhost", sql.Client{Address: "otherhost", User: "root"}, 2)
452452
sess2.SetCurrentDatabase("otherdb")
453453
p.ConnectionReady(sess2)
454-
ctx2 := sql.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
454+
ctx2 := ctx.NewContext(context.Background(), sql.WithPid(2), sql.WithSession(sess2))
455455
ctx2, err = p.BeginQuery(ctx2, "SELECT bar")
456456
require.NoError(t, err)
457457
p.EndQuery(ctx2)
@@ -741,7 +741,8 @@ func TestQueryPlan(t *testing.T, harness Harness, e QueryEngine, tt queries.Quer
741741
func TestQueryPlanWithName(t *testing.T, name string, harness Harness, e QueryEngine, query, expectedPlan string, options sql.DescribeOptions) {
742742
t.Run(name, func(t *testing.T) {
743743
ctx := NewContext(harness)
744-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, query)
744+
builder := planbuilder.NewFromContext(ctx, e.EngineAnalyzer().Catalog)
745+
parsed, _, _, qFlags, err := builder.Parse(query, nil, false)
745746
require.NoError(t, err)
746747

747748
node, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
@@ -768,7 +769,8 @@ func TestQueryPlanWithName(t *testing.T, name string, harness Harness, e QueryEn
768769
func TestQueryPlanWithEngine(t *testing.T, harness Harness, e QueryEngine, tt queries.QueryPlanTest, verbose bool) {
769770
t.Run(tt.Query, func(t *testing.T) {
770771
ctx := NewContext(harness)
771-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, tt.Query)
772+
builder := planbuilder.NewFromContext(ctx, e.EngineAnalyzer().Catalog)
773+
parsed, _, _, qFlags, err := builder.Parse(tt.Query, nil, false)
772774
require.NoError(t, err)
773775

774776
node, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
@@ -1482,6 +1484,7 @@ func TestTruncate(t *testing.T, harness Harness) {
14821484
e := mustNewEngine(t, harness)
14831485
defer e.Close()
14841486
ctx := NewContext(harness)
1487+
builder := planbuilder.NewFromContext(ctx, e.EngineAnalyzer().Catalog)
14851488

14861489
t.Run("Standard TRUNCATE", func(t *testing.T) {
14871490
RunQueryWithContext(t, e, harness, ctx, "CREATE TABLE t1 (pk BIGINT PRIMARY KEY, v1 BIGINT, INDEX(v1))")
@@ -1530,7 +1533,7 @@ func TestTruncate(t *testing.T, harness Harness) {
15301533
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t5 ORDER BY 1", []sql.Row{{int64(1), int64(1)}, {int64(2), int64(2)}}, nil, nil, nil)
15311534

15321535
deleteStr := "DELETE FROM t5"
1533-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1536+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
15341537
require.NoError(t, err)
15351538
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
15361539
require.NoError(t, err)
@@ -1559,7 +1562,8 @@ func TestTruncate(t *testing.T, harness Harness) {
15591562
RunQueryWithContext(t, e, harness, ctx, "INSERT INTO t6parent VALUES (1,1), (2,2)")
15601563
RunQueryWithContext(t, e, harness, ctx, "INSERT INTO t6child VALUES (1,1), (2,2)")
15611564

1562-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, "DELETE FROM t6parent")
1565+
deleteStr := "DELETE FROM t6parent"
1566+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
15631567
require.NoError(t, err)
15641568
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
15651569
require.NoError(t, err)
@@ -1587,7 +1591,7 @@ func TestTruncate(t *testing.T, harness Harness) {
15871591
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t7i ORDER BY 1", []sql.Row{{int64(3), int64(3)}}, nil, nil, nil)
15881592

15891593
deleteStr := "DELETE FROM t7"
1590-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1594+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
15911595
require.NoError(t, err)
15921596
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
15931597
require.NoError(t, err)
@@ -1615,7 +1619,7 @@ func TestTruncate(t *testing.T, harness Harness) {
16151619
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t8 ORDER BY 1", []sql.Row{{int64(1), int64(4)}, {int64(2), int64(5)}}, nil, nil, nil)
16161620

16171621
deleteStr := "DELETE FROM t8"
1618-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1622+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
16191623
require.NoError(t, err)
16201624
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
16211625
require.NoError(t, err)
@@ -1644,7 +1648,7 @@ func TestTruncate(t *testing.T, harness Harness) {
16441648
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t9 ORDER BY 1", []sql.Row{{int64(7), int64(7)}, {int64(8), int64(8)}}, nil, nil, nil)
16451649

16461650
deleteStr := "DELETE FROM t9 WHERE pk > 0"
1647-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1651+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
16481652
require.NoError(t, err)
16491653
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
16501654
require.NoError(t, err)
@@ -1671,7 +1675,7 @@ func TestTruncate(t *testing.T, harness Harness) {
16711675
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t10 ORDER BY 1", []sql.Row{{int64(8), int64(8)}, {int64(9), int64(9)}}, nil, nil, nil)
16721676

16731677
deleteStr := "DELETE FROM t10 LIMIT 1000"
1674-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1678+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
16751679
require.NoError(t, err)
16761680
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
16771681
require.NoError(t, err)
@@ -1698,7 +1702,7 @@ func TestTruncate(t *testing.T, harness Harness) {
16981702
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t11 ORDER BY 1", []sql.Row{{int64(1), int64(1)}, {int64(9), int64(9)}}, nil, nil, nil)
16991703

17001704
deleteStr := "DELETE FROM t11 ORDER BY 1"
1701-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1705+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
17021706
require.NoError(t, err)
17031707
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
17041708
require.NoError(t, err)
@@ -1729,7 +1733,7 @@ func TestTruncate(t *testing.T, harness Harness) {
17291733
TestQueryWithContext(t, ctx, e, harness, "SELECT * FROM t12b ORDER BY 1", []sql.Row{{int64(1), int64(1)}, {int64(2), int64(2)}}, nil, nil, nil)
17301734

17311735
deleteStr := "DELETE t12a, t12b FROM t12a INNER JOIN t12b WHERE t12a.pk=t12b.pk"
1732-
parsed, qFlags, err := planbuilder.Parse(ctx, e.EngineAnalyzer().Catalog, deleteStr)
1736+
parsed, _, _, qFlags, err := builder.Parse(deleteStr, nil, false)
17331737
require.NoError(t, err)
17341738
analyzed, err := e.EngineAnalyzer().Analyze(ctx, parsed, nil, qFlags)
17351739
require.NoError(t, err)
@@ -1956,7 +1960,7 @@ func TestUserPrivileges(t *testing.T, harness ClientHarness) {
19561960
defer engine.Close()
19571961

19581962
ctx := NewContext(harness)
1959-
ctx.NewCtxWithClient(sql.Client{
1963+
ctx.WithClient(sql.Client{
19601964
User: "root",
19611965
Address: "localhost",
19621966
})
@@ -2055,7 +2059,7 @@ func TestUserPrivileges(t *testing.T, harness ClientHarness) {
20552059
t.Skipf("Skipping query %s", lastQuery)
20562060
}
20572061
}
2058-
ctx := rootCtx.NewCtxWithClient(sql.Client{
2062+
ctx := rootCtx.WithClient(sql.Client{
20592063
User: "tester",
20602064
Address: "localhost",
20612065
})
@@ -2156,7 +2160,7 @@ func TestUserAuthentication(t *testing.T, h Harness) {
21562160
require.FailNow(t, "harness must implement ServerHarness")
21572161
}
21582162

2159-
s, err := server.NewServer(serverConfig, engine, sql.NewContext, serverHarness.SessionBuilder(), nil)
2163+
s, err := server.NewServer(serverConfig, engine, sql.NewNonEngineContext, serverHarness.SessionBuilder(), nil)
21602164
require.NoError(t, err)
21612165
go func() {
21622166
err := s.Start()
@@ -4820,7 +4824,7 @@ func TestConcurrentProcessList(t *testing.T, harness Harness) {
48204824
pl.ConnectionReady(sess)
48214825

48224826
var err error
4823-
ctx := sql.NewContext(context.Background(), sql.WithPid(uint64(i)), sql.WithSession(sess), sql.WithProcessList(pl))
4827+
ctx := sql.NewNonEngineContext(context.Background(), sql.WithPid(uint64(i)), sql.WithSession(sess), sql.WithProcessList(pl))
48244828
_, err = pl.BeginQuery(ctx, "foo")
48254829
require.NoError(err)
48264830
}
@@ -5696,7 +5700,7 @@ func testCharsetCollationWire(t *testing.T, h Harness, sessionBuilder server.Ses
56965700
defer engine.Close()
56975701
engine.EngineAnalyzer().Catalog.MySQLDb.AddRootAccount()
56985702

5699-
s, err := server.NewServer(serverConfig, engine, sql.NewContext, sessionBuilder, nil)
5703+
s, err := server.NewServer(serverConfig, engine, sql.NewNonEngineContext, sessionBuilder, nil)
57005704
require.NoError(t, err)
57015705
go func() {
57025706
err := s.Start()
@@ -5813,7 +5817,7 @@ func TestTypesOverWire(t *testing.T, harness ClientHarness, sessionBuilder serve
58135817
Address: fmt.Sprintf("localhost:%d", port),
58145818
MaxConnections: 1000,
58155819
}
5816-
s, err := server.NewServer(serverConfig, engine, sql.NewContext, sessionBuilder, nil)
5820+
s, err := server.NewServer(serverConfig, engine, sql.NewNonEngineContext, sessionBuilder, nil)
58175821
require.NoError(t, err)
58185822
go func() {
58195823
err := s.Start()

0 commit comments

Comments
 (0)