Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 4 additions & 6 deletions pkg/executor/test/memtest/mem_test.go
Original file line number Diff line number Diff line change
Expand Up @@ -56,8 +56,7 @@ func TestGlobalMemArbitrator(t *testing.T) {

tk.MustExecToErr("set @@tidb_mem_arbitrator_mode = standard") // only global
require.Equal(t, tk.ExecToErr("set global tidb_mem_arbitrator_mode = 1").Error(), "tidb_mem_arbitrator_mode: disable; standard; priority;")
require.Equal(t, memory.ArbitratorModeDisable, memory.GlobalMemArbitrator().WorkMode())
require.True(t, memory.GlobalMemArbitrator() == nil)
tk.MustQuery("select @@tidb_mem_arbitrator_mode").Check(testkit.Rows("priority"))

tk.MustExec("set global tidb_mem_arbitrator_mode = standard")
tk.MustQuery("select @@tidb_mem_arbitrator_mode").Check(testkit.Rows("standard"))
Expand All @@ -68,20 +67,19 @@ func TestGlobalMemArbitrator(t *testing.T) {
require.Equal(t, memory.ArbitratorModePriority, memory.GlobalMemArbitrator().WorkMode())

tk.MustExec("set global tidb_mem_arbitrator_mode = default")
tk.MustQuery("select @@tidb_mem_arbitrator_mode").Check(testkit.Rows("disable"))
require.Equal(t, memory.ArbitratorModeDisable, memory.GlobalMemArbitrator().WorkMode())
tk.MustQuery("select @@tidb_mem_arbitrator_mode").Check(testkit.Rows("priority"))

const maxServerLimit uint64 = 1e15
maxServerLimitStr := fmt.Sprintf("%d", maxServerLimit)
tk.MustExec(fmt.Sprintf("set global tidb_server_memory_limit=%d", maxServerLimit))
tk.MustQuery("select @@tidb_server_memory_limit").Check(testkit.Rows(maxServerLimitStr))
require.Equal(t, maxServerLimit, memory.ServerMemoryLimit.Load())
require.Equal(t, uint64(0), memory.GlobalMemArbitrator().Limit()) // 0 under disable mode
require.Equal(t, maxServerLimit, memory.GlobalMemArbitrator().Limit())

require.Equal(t, tk.ExecToErr("set global tidb_mem_arbitrator_soft_limit=-1").Error(), "tidb_mem_arbitrator_soft_limit: 0 (default); (0, 1.0] float-rate * server-limit; (1, server-limit] integer bytes; auto;")
tk.MustExec("set global tidb_mem_arbitrator_soft_limit = 12345678")
tk.MustQuery("select @@tidb_mem_arbitrator_soft_limit").Check(testkit.Rows("12345678"))
require.Equal(t, uint64(0), memory.GlobalMemArbitrator().SoftLimit()) // 0 under disable mode
require.Equal(t, uint64(12345678), memory.GlobalMemArbitrator().SoftLimit())

// normal under standard mode
tk.MustExec("set global tidb_mem_arbitrator_mode = standard")
Expand Down
2 changes: 1 addition & 1 deletion pkg/sessionctx/vardef/tidb_vars.go
Original file line number Diff line number Diff line change
Expand Up @@ -1831,7 +1831,7 @@ const (
DefTiDBEnableBindingUsage = true
DefTiDBAdvancerCheckPointLagLimit = 48 * time.Hour
DefTiDBMemArbitratorSoftLimitText = memory.ArbitratorSoftLimitModDisableName
DefTiDBMemArbitratorModeText = memory.ArbitratorModeDisableName
DefTiDBMemArbitratorModeText = memory.ArbitratorModePriorityName
DefTiDBMemArbitratorQueryReservedText = "0"
DefTiDBMemArbitratorWaitAverse = "0"
DefTiDBIndexLookUpPushDownPolicy = IndexLookUpPushDownPolicyHintOnly
Expand Down
Loading