timeutil

package
v1.1.0-beta.0...-abef9b1 Latest Latest
Warning

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

Go to latest
Published: Dec 15, 2024 License: Apache-2.0 Imports: 14 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var ErrUnknownTimeZone = dbterror.ClassVariable.NewStd(mysql.ErrUnknownTimeZone)

ErrUnknownTimeZone indicates timezone is unknown.

Functions

func ConstructTimeZone

func ConstructTimeZone(name string, offset int) (*time.Location, error)

ConstructTimeZone constructs timezone by name first. When the timezone name is set, the daylight saving problem must be considered. Otherwise the timezone offset in seconds east of UTC is used to constructed the timezone.

func GetSystemTZ

func GetSystemTZ() (string, error)

GetSystemTZ gets the value of systemTZ, an error is returned if systemTZ is not properly set.

func InferSystemTZ

func InferSystemTZ() string

InferSystemTZ reads system timezone from `TZ`, the path of the soft link of `/etc/localtime`. If both of them are failed, system timezone will be set to `UTC`. It is exported because we need to use it during bootstrap stage. And it should be only used at that stage.

func LoadLocation

func LoadLocation(name string) (*time.Location, error)

LoadLocation loads time.Location by IANA timezone time.

func ParseTimeZone

func ParseTimeZone(s string) (*time.Location, error)

ParseTimeZone parses the time zone string, returns the location and whether the time zone is valid.

func SetSystemTZ

func SetSystemTZ(name string)

SetSystemTZ sets systemTZ by the value loaded from mysql.tidb.

func Sleep

func Sleep(ctx context.Context, d time.Duration) error

Sleep is a function like time.Sleep(), the difference is it will return early when ctx finished.

func SystemLocation

func SystemLocation() *time.Location

SystemLocation returns time.SystemLocation's IANA timezone location. It is TiDB's global timezone location.

func WithinDayTimePeriod

func WithinDayTimePeriod(start, end, now time.Time) bool

WithinDayTimePeriod tests whether `now` is between `start` and `end`.

func Zone

func Zone(loc *time.Location) (string, int64)

Zone returns the current timezone name and timezone offset in seconds. In compatible with MySQL, we change `SystemLocation` to `System`.

Types

This section is empty.

Jump to

Keyboard shortcuts

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