tabletservermock

package
v2.1.0+incompatible Latest Latest
Warning

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

Go to latest
Published: Apr 25, 2017 License: BSD-3-Clause Imports: 9 Imported by: 0

Documentation

Overview

Package tabletservermock provides mock interfaces for tabletserver.

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type BroadcastData

type BroadcastData struct {
	// TERTimestamp stores the last broadcast timestamp.
	TERTimestamp int64

	// RealtimeStats stores the last broadcast stats.
	RealtimeStats querypb.RealtimeStats

	// Serving contains the QueryServiceEnabled flag
	Serving bool
}

BroadcastData is used by the mock Controller to send data so the tests can check what was sent.

type Controller

type Controller struct {
	// BroadcastData is a channel where we send BroadcastHealth data.
	// Set at construction time.
	BroadcastData chan *BroadcastData

	// StateChanges has the list of state changes done by SetServingType().
	// Set at construction time.
	StateChanges chan *StateChange

	// CurrentTarget stores the last known target.
	CurrentTarget querypb.Target

	// SetServingTypeError is the return value for SetServingType.
	SetServingTypeError error
	// contains filtered or unexported fields
}

Controller is a mock tabletserver.Controller

func NewController

func NewController() *Controller

NewController returns a mock of tabletserver.Controller

func (*Controller) AddStatusPart

func (tqsc *Controller) AddStatusPart()

AddStatusPart is part of the tabletserver.Controller interface

func (*Controller) BroadcastHealth

func (tqsc *Controller) BroadcastHealth(terTimestamp int64, stats *querypb.RealtimeStats)

BroadcastHealth is part of the tabletserver.Controller interface

func (*Controller) ClearQueryPlanCache

func (tqsc *Controller) ClearQueryPlanCache()

ClearQueryPlanCache is part of the tabletserver.Controller interface

func (*Controller) EnterLameduck

func (tqsc *Controller) EnterLameduck()

EnterLameduck implements tabletserver.Controller.

func (*Controller) InitDBConfig

func (tqsc *Controller) InitDBConfig(target querypb.Target, dbConfigs dbconfigs.DBConfigs, mysqld mysqlctl.MysqlDaemon) error

InitDBConfig is part of the tabletserver.Controller interface

func (*Controller) IsHealthy

func (tqsc *Controller) IsHealthy() error

IsHealthy is part of the tabletserver.Controller interface

func (*Controller) IsServing

func (tqsc *Controller) IsServing() bool

IsServing is part of the tabletserver.Controller interface

func (*Controller) QueryService

func (tqsc *Controller) QueryService() queryservice.QueryService

QueryService is part of the tabletserver.Controller interface

func (*Controller) Register

func (tqsc *Controller) Register()

Register is part of the tabletserver.Controller interface

func (*Controller) RegisterQueryRuleSource

func (tqsc *Controller) RegisterQueryRuleSource(ruleSource string)

RegisterQueryRuleSource is part of the tabletserver.Controller interface

func (*Controller) ReloadSchema

func (tqsc *Controller) ReloadSchema(ctx context.Context) error

ReloadSchema is part of the tabletserver.Controller interface

func (*Controller) SchemaEngine

func (tqsc *Controller) SchemaEngine() *schema.Engine

SchemaEngine is part of the tabletserver.Controller interface

func (*Controller) SetQueryRules

func (tqsc *Controller) SetQueryRules(ruleSource string, qrs *rules.Rules) error

SetQueryRules is part of the tabletserver.Controller interface

func (*Controller) SetQueryServiceEnabledForTests

func (tqsc *Controller) SetQueryServiceEnabledForTests(enabled bool)

SetQueryServiceEnabledForTests can set queryServiceEnabled in tests.

func (*Controller) SetServingType

func (tqsc *Controller) SetServingType(tabletType topodatapb.TabletType, serving bool, alsoAllow []topodatapb.TabletType) (bool, error)

SetServingType is part of the tabletserver.Controller interface

func (*Controller) UnRegisterQueryRuleSource

func (tqsc *Controller) UnRegisterQueryRuleSource(ruleSource string)

UnRegisterQueryRuleSource is part of the tabletserver.Controller interface

type StateChange

type StateChange struct {
	// Serving is true when the QueryService is enabled.
	Serving bool
	// TabletType is the type of tablet e.g. REPLICA.
	TabletType topodatapb.TabletType
}

StateChange stores the state the controller changed to. Tests can use this to verify that the state changed as expected.

Jump to

Keyboard shortcuts

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