all: gofmt -w -r 'interface{} -> any' src

Signed-off-by: Vicent Marti <vmg@strn.cat>
This commit is contained in:
Vicent Marti 2022-03-18 15:45:17 +01:00
Родитель 891bdd3033
Коммит 8de235531d
318 изменённых файлов: 901 добавлений и 901 удалений

Просмотреть файл

@ -30,7 +30,7 @@ func newSizedPool(size int) *sizedPool {
return &sizedPool{
size: size,
pool: sync.Pool{
New: func() interface{} { return makeSlicePointer(size) },
New: func() any { return makeSlicePointer(size) },
},
}
}

10
go/cache/cache.go поставляемый
Просмотреть файл

@ -19,9 +19,9 @@ package cache
// Cache is a generic interface type for a data structure that keeps recently used
// objects in memory and evicts them when it becomes full.
type Cache interface {
Get(key string) (interface{}, bool)
Set(key string, val interface{}) bool
ForEach(callback func(interface{}) bool)
Get(key string) (any, bool)
Set(key string, val any) bool
ForEach(callback func(any) bool)
Delete(key string)
Clear()
@ -56,7 +56,7 @@ func NewDefaultCacheImpl(cfg *Config) Cache {
if cfg.MaxEntries == 0 || cfg.MaxMemoryUsage == 0 {
return &nullCache{}
}
return NewRistrettoCache(cfg.MaxEntries, cfg.MaxMemoryUsage, func(val interface{}) int64 {
return NewRistrettoCache(cfg.MaxEntries, cfg.MaxMemoryUsage, func(val any) int64 {
return val.(cachedObject).CachedSize(true)
})
@ -64,7 +64,7 @@ func NewDefaultCacheImpl(cfg *Config) Cache {
if cfg.MaxEntries == 0 {
return &nullCache{}
}
return NewLRUCache(cfg.MaxEntries, func(_ interface{}) int64 {
return NewLRUCache(cfg.MaxEntries, func(_ any) int64 {
return 1
})
}

18
go/cache/lru_cache.go поставляемый
Просмотреть файл

@ -41,7 +41,7 @@ type LRUCache struct {
// list & table contain *entry objects.
list *list.List
table map[string]*list.Element
cost func(interface{}) int64
cost func(any) int64
size int64
capacity int64
@ -53,18 +53,18 @@ type LRUCache struct {
// Item is what is stored in the cache
type Item struct {
Key string
Value interface{}
Value any
}
type entry struct {
key string
value interface{}
value any
size int64
timeAccessed time.Time
}
// NewLRUCache creates a new empty cache with the given capacity.
func NewLRUCache(capacity int64, cost func(interface{}) int64) *LRUCache {
func NewLRUCache(capacity int64, cost func(any) int64) *LRUCache {
return &LRUCache{
list: list.New(),
table: make(map[string]*list.Element),
@ -75,7 +75,7 @@ func NewLRUCache(capacity int64, cost func(interface{}) int64) *LRUCache {
// Get returns a value from the cache, and marks the entry as most
// recently used.
func (lru *LRUCache) Get(key string) (v interface{}, ok bool) {
func (lru *LRUCache) Get(key string) (v any, ok bool) {
lru.mu.Lock()
defer lru.mu.Unlock()
@ -90,7 +90,7 @@ func (lru *LRUCache) Get(key string) (v interface{}, ok bool) {
}
// Set sets a value in the cache.
func (lru *LRUCache) Set(key string, value interface{}) bool {
func (lru *LRUCache) Set(key string, value any) bool {
lru.mu.Lock()
defer lru.mu.Unlock()
@ -190,7 +190,7 @@ func (lru *LRUCache) Misses() int64 {
// ForEach yields all the values for the cache, ordered from most recently
// used to least recently used.
func (lru *LRUCache) ForEach(callback func(value interface{}) bool) {
func (lru *LRUCache) ForEach(callback func(value any) bool) {
lru.mu.Lock()
defer lru.mu.Unlock()
@ -216,7 +216,7 @@ func (lru *LRUCache) Items() []Item {
return items
}
func (lru *LRUCache) updateInplace(element *list.Element, value interface{}) {
func (lru *LRUCache) updateInplace(element *list.Element, value any) {
valueSize := lru.cost(value)
sizeDiff := valueSize - element.Value.(*entry).size
element.Value.(*entry).value = value
@ -231,7 +231,7 @@ func (lru *LRUCache) moveToFront(element *list.Element) {
element.Value.(*entry).timeAccessed = time.Now()
}
func (lru *LRUCache) addNew(key string, value interface{}) {
func (lru *LRUCache) addNew(key string, value any) {
newEntry := &entry{key, value, lru.cost(value), time.Now()}
element := lru.list.PushFront(newEntry)
lru.table[key] = element

2
go/cache/lru_cache_test.go поставляемый
Просмотреть файл

@ -24,7 +24,7 @@ type CacheValue struct {
size int64
}
func cacheValueSize(val interface{}) int64 {
func cacheValueSize(val any) int64 {
return val.(*CacheValue).size
}

6
go/cache/null.go поставляемый
Просмотреть файл

@ -20,17 +20,17 @@ package cache
type nullCache struct{}
// Get never returns anything on the nullCache
func (n *nullCache) Get(_ string) (interface{}, bool) {
func (n *nullCache) Get(_ string) (any, bool) {
return nil, false
}
// Set is a no-op in the nullCache
func (n *nullCache) Set(_ string, _ interface{}) bool {
func (n *nullCache) Set(_ string, _ any) bool {
return false
}
// ForEach iterates the nullCache, which is always empty
func (n *nullCache) ForEach(_ func(interface{}) bool) {}
func (n *nullCache) ForEach(_ func(any) bool) {}
// Delete is a no-op in the nullCache
func (n *nullCache) Delete(_ string) {}

2
go/cache/perf_test.go поставляемый
Просмотреть файл

@ -21,7 +21,7 @@ import (
)
func BenchmarkGet(b *testing.B) {
cache := NewLRUCache(64*1024*1024, func(val interface{}) int64 {
cache := NewLRUCache(64*1024*1024, func(val any) int64 {
return int64(cap(val.([]byte)))
})
value := make([]byte, 1000)

2
go/cache/ristretto.go поставляемый
Просмотреть файл

@ -7,7 +7,7 @@ import (
var _ Cache = &ristretto.Cache{}
// NewRistrettoCache returns a Cache implementation based on Ristretto
func NewRistrettoCache(maxEntries, maxCost int64, cost func(interface{}) int64) *ristretto.Cache {
func NewRistrettoCache(maxEntries, maxCost int64, cost func(any) int64) *ristretto.Cache {
// The TinyLFU paper recommends to allocate 10x times the max entries amount as counters
// for the admission policy; since our caches are small and we're very interested on admission
// accuracy, we're a bit more greedy than 10x

20
go/cache/ristretto/cache.go поставляемый
Просмотреть файл

@ -67,7 +67,7 @@ type Cache struct {
// onReject is called when an item is rejected via admission policy.
onReject itemCallback
// onExit is called whenever a value goes out of scope from the cache.
onExit func(interface{})
onExit func(any)
// KeyToHash function is used to customize the key hashing algorithm.
// Each key will be hashed using the provided function. If keyToHash value
// is not set, the default keyToHash function is used.
@ -77,7 +77,7 @@ type Cache struct {
// indicates whether cache is closed.
isClosed bool
// cost calculates cost from a value.
cost func(value interface{}) int64
cost func(value any) int64
// ignoreInternalCost dictates whether to ignore the cost of internally storing
// the item in the cost calculation.
ignoreInternalCost bool
@ -124,7 +124,7 @@ type Config struct {
// OnExit is called whenever a value is removed from cache. This can be
// used to do manual memory deallocation. Would also be called on eviction
// and rejection of the value.
OnExit func(val interface{})
OnExit func(val any)
// KeyToHash function is used to customize the key hashing algorithm.
// Each key will be hashed using the provided function. If keyToHash value
// is not set, the default keyToHash function is used.
@ -132,7 +132,7 @@ type Config struct {
// Cost evaluates a value and outputs a corresponding cost. This function
// is ran after Set is called for a new item or an item update with a cost
// param of 0.
Cost func(value interface{}) int64
Cost func(value any) int64
// IgnoreInternalCost set to true indicates to the cache that the cost of
// internally storing the value should be ignored. This is useful when the
// cost passed to set is not using bytes as units. Keep in mind that setting
@ -153,7 +153,7 @@ type Item struct {
flag itemFlag
Key uint64
Conflict uint64
Value interface{}
Value any
Cost int64
wg *sync.WaitGroup
}
@ -179,7 +179,7 @@ func NewCache(config *Config) (*Cache, error) {
cost: config.Cost,
ignoreInternalCost: config.IgnoreInternalCost,
}
cache.onExit = func(val interface{}) {
cache.onExit = func(val any) {
if config.OnExit != nil && val != nil {
config.OnExit(val)
}
@ -223,7 +223,7 @@ func (c *Cache) Wait() {
// Get returns the value (if any) and a boolean representing whether the
// value was found or not. The value can be nil and the boolean can be true at
// the same time.
func (c *Cache) Get(key string) (interface{}, bool) {
func (c *Cache) Get(key string) (any, bool) {
if c == nil || c.isClosed {
return nil, false
}
@ -245,14 +245,14 @@ func (c *Cache) Get(key string) (interface{}, bool) {
// item will be added and other items will be evicted in order to make room.
//
// The cost of the entry will be evaluated lazily by the cache's Cost function.
func (c *Cache) Set(key string, value interface{}) bool {
func (c *Cache) Set(key string, value any) bool {
return c.SetWithCost(key, value, 0)
}
// SetWithCost works like Set but adds a key-value pair to the cache with a specific
// cost. The built-in Cost function will not be called to evaluate the object's cost
// and instead the given value will be used.
func (c *Cache) SetWithCost(key string, value interface{}, cost int64) bool {
func (c *Cache) SetWithCost(key string, value any, cost int64) bool {
if c == nil || c.isClosed {
return false
}
@ -421,7 +421,7 @@ func (c *Cache) Misses() int64 {
// ForEach yields all the values currently stored in the cache to the given callback.
// The callback may return `false` to stop the iteration early.
func (c *Cache) ForEach(forEach func(interface{}) bool) {
func (c *Cache) ForEach(forEach func(any) bool) {
if c == nil {
return
}

4
go/cache/ristretto/cache_test.go поставляемый
Просмотреть файл

@ -237,7 +237,7 @@ func TestCacheProcessItems(t *testing.T) {
MaxCost: 10,
BufferItems: 64,
IgnoreInternalCost: true,
Cost: func(value interface{}) int64 {
Cost: func(value any) int64 {
return int64(value.(int))
},
OnEvict: func(item *Item) {
@ -625,7 +625,7 @@ func TestDropUpdates(t *testing.T) {
lastEvictedSet := int64(-1)
var err error
handler := func(_ interface{}, value interface{}) {
handler := func(_ any, value any) {
v := value.(string)
lastEvictedSet, err = strconv.ParseInt(string(v), 10, 32)
require.NoError(t, err)

2
go/cache/ristretto/ring.go поставляемый
Просмотреть файл

@ -77,7 +77,7 @@ func newRingBuffer(cons ringConsumer, capa int64) *ringBuffer {
// available to us (such as runtime_procPin()).
return &ringBuffer{
pool: &sync.Pool{
New: func() interface{} { return newRingStripe(cons, capa) },
New: func() any { return newRingStripe(cons, capa) },
},
}
}

26
go/cache/ristretto/store.go поставляемый
Просмотреть файл

@ -25,7 +25,7 @@ import (
type storeItem struct {
key uint64
conflict uint64
value interface{}
value any
}
// store is the interface fulfilled by all hash map implementations in this
@ -36,20 +36,20 @@ type storeItem struct {
// Every store is safe for concurrent usage.
type store interface {
// Get returns the value associated with the key parameter.
Get(uint64, uint64) (interface{}, bool)
Get(uint64, uint64) (any, bool)
// Set adds the key-value pair to the Map or updates the value if it's
// already present. The key-value pair is passed as a pointer to an
// item object.
Set(*Item)
// Del deletes the key-value pair from the Map.
Del(uint64, uint64) (uint64, interface{})
Del(uint64, uint64) (uint64, any)
// Update attempts to update the key with a new value and returns true if
// successful.
Update(*Item) (interface{}, bool)
Update(*Item) (any, bool)
// Clear clears all contents of the store.
Clear(onEvict itemCallback)
// ForEach yields all the values in the store
ForEach(forEach func(interface{}) bool)
ForEach(forEach func(any) bool)
// Len returns the number of entries in the store
Len() int
}
@ -75,7 +75,7 @@ func newShardedMap() *shardedMap {
return sm
}
func (sm *shardedMap) Get(key, conflict uint64) (interface{}, bool) {
func (sm *shardedMap) Get(key, conflict uint64) (any, bool) {
return sm.shards[key%numShards].get(key, conflict)
}
@ -88,15 +88,15 @@ func (sm *shardedMap) Set(i *Item) {
sm.shards[i.Key%numShards].Set(i)
}
func (sm *shardedMap) Del(key, conflict uint64) (uint64, interface{}) {
func (sm *shardedMap) Del(key, conflict uint64) (uint64, any) {
return sm.shards[key%numShards].Del(key, conflict)
}
func (sm *shardedMap) Update(newItem *Item) (interface{}, bool) {
func (sm *shardedMap) Update(newItem *Item) (any, bool) {
return sm.shards[newItem.Key%numShards].Update(newItem)
}
func (sm *shardedMap) ForEach(forEach func(interface{}) bool) {
func (sm *shardedMap) ForEach(forEach func(any) bool) {
for _, shard := range sm.shards {
if !shard.foreach(forEach) {
break
@ -129,7 +129,7 @@ func newLockedMap() *lockedMap {
}
}
func (m *lockedMap) get(key, conflict uint64) (interface{}, bool) {
func (m *lockedMap) get(key, conflict uint64) (any, bool) {
m.RLock()
item, ok := m.data[key]
m.RUnlock()
@ -167,7 +167,7 @@ func (m *lockedMap) Set(i *Item) {
}
}
func (m *lockedMap) Del(key, conflict uint64) (uint64, interface{}) {
func (m *lockedMap) Del(key, conflict uint64) (uint64, any) {
m.Lock()
item, ok := m.data[key]
if !ok {
@ -184,7 +184,7 @@ func (m *lockedMap) Del(key, conflict uint64) (uint64, interface{}) {
return item.conflict, item.value
}
func (m *lockedMap) Update(newItem *Item) (interface{}, bool) {
func (m *lockedMap) Update(newItem *Item) (any, bool) {
m.Lock()
item, ok := m.data[newItem.Key]
if !ok {
@ -228,7 +228,7 @@ func (m *lockedMap) Clear(onEvict itemCallback) {
m.Unlock()
}
func (m *lockedMap) foreach(forEach func(interface{}) bool) bool {
func (m *lockedMap) foreach(forEach func(any) bool) bool {
m.RLock()
defer m.RUnlock()
for _, si := range m.data {

Просмотреть файл

@ -29,7 +29,7 @@ func List() *cobra.Command {
listCmd.Run = func(cmd *cobra.Command, args []string) {
rules := common.GetRules(configFile)
var out interface{}
var out any
if listOptName == "" {
if listOptNamesOnly {
out = []string{}

Просмотреть файл

@ -18,7 +18,7 @@ func GetRules(path string) *rules.Rules {
return rules
}
func MustPrintJSON(obj interface{}) {
func MustPrintJSON(obj any) {
enc, err := json.MarshalIndent(obj, "", " ")
if err != nil {
log.Fatalf("Unable to marshal object: %v", err)
@ -26,7 +26,7 @@ func MustPrintJSON(obj interface{}) {
fmt.Printf("%v\n", string(enc))
}
func MustWriteJSON(obj interface{}, path string) {
func MustWriteJSON(obj any, path string) {
enc, err := json.MarshalIndent(obj, "", " ")
if err != nil {
log.Fatalf("Unable to marshal object: %v", err)

Просмотреть файл

@ -67,7 +67,7 @@ var (
// fatal ensures the tracer is closed and final spans are sent before issuing
// a log.Fatal call with the given args.
func fatal(args ...interface{}) {
func fatal(args ...any) {
trace.LogErrorsWhenClosing(traceCloser)
log.Fatal(args...)
}

Просмотреть файл

@ -85,7 +85,7 @@ func init() {
})
}
type bindvars []interface{}
type bindvars []any
func (bv *bindvars) String() string {
b, err := json.Marshal(bv)
@ -116,7 +116,7 @@ func (bv *bindvars) Set(s string) (err error) {
}
// For internal flag compatibility
func (bv *bindvars) Get() interface{} {
func (bv *bindvars) Get() any {
return bv
}
@ -191,8 +191,8 @@ func run() (*results, error) {
return execMulti(ctx, db, args[0])
}
func prepareBindVariables() []interface{} {
bv := make([]interface{}, 0, len(*bindVariables)+1)
func prepareBindVariables() []any {
bv := make([]any, 0, len(*bindVariables)+1)
bv = append(bv, (*bindVariables)...)
if *maxSeqID > *minSeqID {
bv = append(bv, <-seqChan)
@ -263,7 +263,7 @@ func execDml(ctx context.Context, db *sql.DB, sql string) (*results, error) {
return nil, vterrors.Wrap(err, "BEGIN failed")
}
result, err := tx.ExecContext(ctx, sql, []interface{}(prepareBindVariables())...)
result, err := tx.ExecContext(ctx, sql, []any(prepareBindVariables())...)
if err != nil {
return nil, vterrors.Wrap(err, "failed to execute DML")
}
@ -284,7 +284,7 @@ func execDml(ctx context.Context, db *sql.DB, sql string) (*results, error) {
func execNonDml(ctx context.Context, db *sql.DB, sql string) (*results, error) {
start := time.Now()
rows, err := db.QueryContext(ctx, sql, []interface{}(prepareBindVariables())...)
rows, err := db.QueryContext(ctx, sql, []any(prepareBindVariables())...)
if err != nil {
return nil, vterrors.Wrap(err, "client error")
}
@ -300,7 +300,7 @@ func execNonDml(ctx context.Context, db *sql.DB, sql string) (*results, error) {
// get the rows
for rows.Next() {
row := make([]interface{}, len(cols))
row := make([]any, len(cols))
for i := range row {
var col string
row[i] = &col

Просмотреть файл

@ -30,20 +30,20 @@ func addStatusParts(vtg *vtgate.VTGate) {
*discovery.TabletURLTemplateString = "{{.NamedStatusURL}}"
discovery.ParseTabletURLTemplateFromFlag()
servenv.AddStatusPart("Executor", vtgate.ExecutorTemplate, func() interface{} {
servenv.AddStatusPart("Executor", vtgate.ExecutorTemplate, func() any {
return nil
})
servenv.AddStatusPart("VSchema", vtgate.VSchemaTemplate, func() interface{} {
servenv.AddStatusPart("VSchema", vtgate.VSchemaTemplate, func() any {
return vtg.VSchemaStats()
})
servenv.AddStatusFuncs(srvtopo.StatusFuncs)
servenv.AddStatusPart("Topology Cache", srvtopo.TopoTemplate, func() interface{} {
servenv.AddStatusPart("Topology Cache", srvtopo.TopoTemplate, func() any {
return resilientServer.CacheStatus()
})
servenv.AddStatusPart("Gateway Status", vtgate.StatusTemplate, func() interface{} {
servenv.AddStatusPart("Gateway Status", vtgate.StatusTemplate, func() any {
return vtg.GetGatewayCacheStatus()
})
servenv.AddStatusPart("Health Check Cache", discovery.HealthCheckTemplate, func() interface{} {
servenv.AddStatusPart("Health Check Cache", discovery.HealthCheckTemplate, func() any {
return vtg.Gateway().TabletsCacheStatus()
})
}

Просмотреть файл

@ -34,7 +34,7 @@ import (
// either by being a proto message type or by anonymously embedding one, so for
// other types that may have nested struct fields, we still use the standard Go
// marshaler, which will result in different formattings.
func MarshalJSON(obj interface{}) ([]byte, error) {
func MarshalJSON(obj any) ([]byte, error) {
switch obj := obj.(type) {
case proto.Message:
m := protojson.MarshalOptions{

Просмотреть файл

@ -25,20 +25,20 @@ import (
)
func addStatusParts(vtg *vtgate.VTGate) {
servenv.AddStatusPart("Executor", vtgate.ExecutorTemplate, func() interface{} {
servenv.AddStatusPart("Executor", vtgate.ExecutorTemplate, func() any {
return nil
})
servenv.AddStatusPart("VSchema", vtgate.VSchemaTemplate, func() interface{} {
servenv.AddStatusPart("VSchema", vtgate.VSchemaTemplate, func() any {
return vtg.VSchemaStats()
})
servenv.AddStatusFuncs(srvtopo.StatusFuncs)
servenv.AddStatusPart("Topology Cache", srvtopo.TopoTemplate, func() interface{} {
servenv.AddStatusPart("Topology Cache", srvtopo.TopoTemplate, func() any {
return resilientServer.CacheStatus()
})
servenv.AddStatusPart("Gateway Status", vtgate.StatusTemplate, func() interface{} {
servenv.AddStatusPart("Gateway Status", vtgate.StatusTemplate, func() any {
return vtg.GetGatewayCacheStatus()
})
servenv.AddStatusPart("Health Check Cache", discovery.HealthCheckTemplate, func() interface{} {
servenv.AddStatusPart("Health Check Cache", discovery.HealthCheckTemplate, func() any {
return vtg.Gateway().TabletsCacheStatus()
})
}

Просмотреть файл

@ -70,7 +70,7 @@ func printSortedMap(val reflect.Value) []byte {
return buf.Bytes()
}
func echoQueryResult(vals map[string]interface{}) *sqltypes.Result {
func echoQueryResult(vals map[string]any) *sqltypes.Result {
qr := &sqltypes.Result{}
var row []sqltypes.Value
@ -100,7 +100,7 @@ func echoQueryResult(vals map[string]interface{}) *sqltypes.Result {
func (c *echoClient) Execute(ctx context.Context, session *vtgatepb.Session, sql string, bindVariables map[string]*querypb.BindVariable) (*vtgatepb.Session, *sqltypes.Result, error) {
if strings.HasPrefix(sql, EchoPrefix) {
return session, echoQueryResult(map[string]interface{}{
return session, echoQueryResult(map[string]any{
"callerId": callerid.EffectiveCallerIDFromContext(ctx),
"query": sql,
"bindVars": bindVariables,
@ -112,7 +112,7 @@ func (c *echoClient) Execute(ctx context.Context, session *vtgatepb.Session, sql
func (c *echoClient) StreamExecute(ctx context.Context, session *vtgatepb.Session, sql string, bindVariables map[string]*querypb.BindVariable, callback func(*sqltypes.Result) error) error {
if strings.HasPrefix(sql, EchoPrefix) {
callback(echoQueryResult(map[string]interface{}{
callback(echoQueryResult(map[string]any{
"callerId": callerid.EffectiveCallerIDFromContext(ctx),
"query": sql,
"bindVars": bindVariables,
@ -130,7 +130,7 @@ func (c *echoClient) ExecuteBatch(ctx context.Context, session *vtgatepb.Session
bindVariablesList = make([]map[string]*querypb.BindVariable, len(sqlList))
}
for queryNum, query := range sqlList {
result := echoQueryResult(map[string]interface{}{
result := echoQueryResult(map[string]any{
"callerId": callerid.EffectiveCallerIDFromContext(ctx),
"query": query,
"bindVars": bindVariablesList[queryNum],
@ -175,7 +175,7 @@ func (c *echoClient) VStream(ctx context.Context, tabletType topodatapb.TabletTy
func (c *echoClient) Prepare(ctx context.Context, session *vtgatepb.Session, sql string, bindVariables map[string]*querypb.BindVariable) (*vtgatepb.Session, []*querypb.Field, error) {
if strings.HasPrefix(sql, EchoPrefix) {
return session, echoQueryResult(map[string]interface{}{
return session, echoQueryResult(map[string]any{
"callerId": callerid.EffectiveCallerIDFromContext(ctx),
"query": sql,
"bindVars": bindVariables,

Просмотреть файл

@ -85,8 +85,8 @@ var (
)
func addStatusParts(qsc tabletserver.Controller) {
servenv.AddStatusPart("Tablet", tabletTemplate, func() interface{} {
return map[string]interface{}{
servenv.AddStatusPart("Tablet", tabletTemplate, func() any {
return map[string]any{
"Tablet": topo.NewTabletInfo(tm.Tablet(), nil),
"DeniedTables": tm.DeniedTables(),
}

Просмотреть файл

@ -84,7 +84,7 @@ import (
var (
listenersMutex sync.RWMutex // protects listeners and interfaces
listeners = make(map[reflect.Type][]interface{})
listeners = make(map[reflect.Type][]any)
interfaces = make([]reflect.Type, 0)
)
@ -99,7 +99,7 @@ func (why BadListenerError) Error() string {
// AddListener registers a listener function that will be called when a matching
// event is dispatched. The type of the function's first (and only) argument
// declares the event type (or interface) to listen for.
func AddListener(fn interface{}) {
func AddListener(fn any) {
listenersMutex.Lock()
defer listenersMutex.Unlock()
@ -129,7 +129,7 @@ func AddListener(fn interface{}) {
// Dispatch sends an event to all registered listeners that were declared
// to accept values of the event's type, or interfaces that the value implements.
func Dispatch(ev interface{}) {
func Dispatch(ev any) {
listenersMutex.RLock()
defer listenersMutex.RUnlock()
@ -157,12 +157,12 @@ func callListeners(t reflect.Type, vals []reflect.Value) {
// dispatching into one call.
type Updater interface {
// Update is called by DispatchUpdate() before the event is dispatched.
Update(update interface{})
Update(update any)
}
// DispatchUpdate calls Update() on the event and then dispatches it. This is a
// shortcut for combining updates and dispatches into a single call.
func DispatchUpdate(ev Updater, update interface{}) {
func DispatchUpdate(ev Updater, update any) {
ev.Update(update)
Dispatch(ev)
}

Просмотреть файл

@ -45,7 +45,7 @@ func clearListeners() {
listenersMutex.Lock()
defer listenersMutex.Unlock()
listeners = make(map[reflect.Type][]interface{})
listeners = make(map[reflect.Type][]any)
interfaces = make([]reflect.Type, 0)
}
@ -92,7 +92,7 @@ func TestEmptyInterfaceListener(t *testing.T) {
clearListeners()
triggered := false
AddListener(func(interface{}) { triggered = true })
AddListener(func(any) { triggered = true })
Dispatch("this should match interface{}")
if !triggered {
@ -228,10 +228,10 @@ func TestDispatchValueToPointerInterfaceListener(t *testing.T) {
}
type testUpdateEvent struct {
update interface{}
update any
}
func (ev *testUpdateEvent) Update(update interface{}) {
func (ev *testUpdateEvent) Update(update any) {
ev.update = update
}

Просмотреть файл

@ -69,9 +69,9 @@ type loggerMsg struct {
}
type testLogger struct {
logs []loggerMsg
savedInfof func(format string, args ...interface{})
savedWarningf func(format string, args ...interface{})
savedErrorf func(format string, args ...interface{})
savedInfof func(format string, args ...any)
savedWarningf func(format string, args ...any)
savedErrorf func(format string, args ...any)
}
func newTestLogger() *testLogger {
@ -92,19 +92,19 @@ func (tl *testLogger) Close() {
log.Errorf = tl.savedErrorf
}
func (tl *testLogger) recordInfof(format string, args ...interface{}) {
func (tl *testLogger) recordInfof(format string, args ...any) {
msg := fmt.Sprintf(format, args...)
tl.logs = append(tl.logs, loggerMsg{msg, "INFO"})
tl.savedInfof(msg)
}
func (tl *testLogger) recordWarningf(format string, args ...interface{}) {
func (tl *testLogger) recordWarningf(format string, args ...any) {
msg := fmt.Sprintf(format, args...)
tl.logs = append(tl.logs, loggerMsg{msg, "WARNING"})
tl.savedWarningf(msg)
}
func (tl *testLogger) recordErrorf(format string, args ...interface{}) {
func (tl *testLogger) recordErrorf(format string, args ...any) {
msg := fmt.Sprintf(format, args...)
tl.logs = append(tl.logs, loggerMsg{msg, "ERROR"})
tl.savedErrorf(msg)

Просмотреть файл

@ -76,7 +76,7 @@ func RecoverAll() {
doRecover(recover(), true)
}
func doRecover(err interface{}, recoverAll bool) {
func doRecover(err any, recoverAll bool) {
if err == nil {
return
}

Просмотреть файл

@ -36,7 +36,7 @@ var (
type StringListValue []string
// Get returns the []string value of this flag.
func (value StringListValue) Get() interface{} {
func (value StringListValue) Get() any {
return []string(value)
}
@ -111,7 +111,7 @@ func (value *StringMapValue) Set(v string) error {
}
// Get returns the map[string]string value of this flag.
func (value StringMapValue) Get() interface{} {
func (value StringMapValue) Get() any {
return map[string]string(value)
}

Просмотреть файл

@ -27,29 +27,29 @@ import (
type Deduplicable interface {
// IsDuplicate returns true if other is considered to be a
// duplicate of the calling instance.
IsDuplicate(interface{}) bool
IsDuplicate(any) bool
}
// History is a data structure that allows you to keep some number of
// records.
type History struct {
mu sync.Mutex
records []interface{}
lastAdded interface{}
latest interface{}
records []any
lastAdded any
latest any
next int
length int
}
// New returns a History with the specified maximum length.
func New(length int) *History {
return &History{records: make([]interface{}, length)}
return &History{records: make([]any, length)}
}
// Add a new record in a threadsafe manner. If record implements
// Deduplicable, and IsDuplicate returns true when called on the last
// previously added record, it will not be added.
func (history *History) Add(record interface{}) {
func (history *History) Add(record any) {
history.mu.Lock()
defer history.mu.Unlock()
@ -73,11 +73,11 @@ func (history *History) Add(record interface{}) {
// Records returns the kept records in reverse chronological order in a
// threadsafe manner.
func (history *History) Records() []interface{} {
func (history *History) Records() []any {
history.mu.Lock()
defer history.mu.Unlock()
records := make([]interface{}, 0, history.length)
records := make([]any, 0, history.length)
records = append(records, history.records[history.next:history.length]...)
records = append(records, history.records[:history.next]...)
@ -91,7 +91,7 @@ func (history *History) Records() []interface{} {
// Latest returns the record most recently passed to Add(),
// regardless of whether it was actually added or dropped as a duplicate.
func (history *History) Latest() interface{} {
func (history *History) Latest() any {
history.mu.Lock()
defer history.mu.Unlock()
return history.latest

Просмотреть файл

@ -89,7 +89,7 @@ func TestLatest(t *testing.T) {
type duplic int
func (d duplic) IsDuplicate(other interface{}) bool {
func (d duplic) IsDuplicate(other any) bool {
return d == other
}
@ -104,6 +104,6 @@ func TestIsEquivalent(t *testing.T) {
type mod10 int
func (m mod10) IsDuplicate(other interface{}) bool {
func (m mod10) IsDuplicate(other any) bool {
return m%10 == other.(mod10)%10
}

Просмотреть файл

@ -95,7 +95,7 @@ const (
)
// Check and warn on any single-dash flags.
func warnOnSingleDashLongFlags(fs *goflag.FlagSet, argv []string, warningf func(msg string, args ...interface{})) {
func warnOnSingleDashLongFlags(fs *goflag.FlagSet, argv []string, warningf func(msg string, args ...any)) {
fs.Visit(func(f *goflag.Flag) {
// Boolean flags with single-character names are okay to use the
// single-dash form. I don't _think_ we have any of these, but I'm being
@ -113,7 +113,7 @@ func warnOnSingleDashLongFlags(fs *goflag.FlagSet, argv []string, warningf func(
}
// Check and warn for any mixed posarg / dashed-arg on the CLI.
func warnOnMixedPositionalAndFlagArguments(posargs []string, warningf func(msg string, args ...interface{})) {
func warnOnMixedPositionalAndFlagArguments(posargs []string, warningf func(msg string, args ...any)) {
for _, arg := range posargs {
if arg == "--" {
break

Просмотреть файл

@ -31,7 +31,7 @@ var carriageReturn = []byte("\n")
// Unmarshal wraps json.Unmarshal, but returns errors that
// also mention the line number. This function is not very
// efficient and should not be used for high QPS operations.
func Unmarshal(data []byte, v interface{}) error {
func Unmarshal(data []byte, v any) error {
if pb, ok := v.(proto.Message); ok {
return annotate(data, protojson.Unmarshal(data, pb))
}

Просмотреть файл

@ -37,7 +37,7 @@ func TestUnmarshal(t *testing.T) {
err: "",
}}
for _, tcase := range tcases {
out := make(map[string]interface{})
out := make(map[string]any)
err := Unmarshal([]byte(tcase.in), &out)
got := ""
if err != nil {

Просмотреть файл

@ -24,7 +24,7 @@ import (
// MarshalNoEscape is the same functionality as json.Marshal but
// with HTML escaping disabled
func MarshalNoEscape(v interface{}) ([]byte, error) {
func MarshalNoEscape(v any) ([]byte, error) {
buf := bytes.Buffer{}
enc := json.NewEncoder(&buf)
enc.SetEscapeHTML(false)
@ -37,7 +37,7 @@ func MarshalNoEscape(v interface{}) ([]byte, error) {
// MarshalIndentNoEscape is the same functionality as json.MarshalIndent but with HTML escaping
// disabled
func MarshalIndentNoEscape(v interface{}, prefix, indent string) ([]byte, error) {
func MarshalIndentNoEscape(v any, prefix, indent string) ([]byte, error) {
buf := bytes.Buffer{}
enc := json.NewEncoder(&buf)
enc.SetEscapeHTML(false)

Просмотреть файл

@ -23,7 +23,7 @@ import (
func TestMarshalNoEscape(t *testing.T) {
cases := []struct {
name string
v interface{}
v any
expected string
}{
{
@ -63,7 +63,7 @@ func TestMarshalNoEscape(t *testing.T) {
func TestMarshalIndentNoEscape(t *testing.T) {
cases := []struct {
name string
v interface{}
v any
prefix string
ident string
expected string

Просмотреть файл

@ -48,7 +48,7 @@ https://github.com/noplay/python-mysql-replication/blob/175df28cc8b536a68522ff9b
//TODO remove once the json refactor is tested live
var jsonDebug = false
func jlog(tpl string, vals ...interface{}) {
func jlog(tpl string, vals ...any) {
if !jsonDebug {
return
}

Просмотреть файл

@ -164,7 +164,7 @@ func TestJSONTypes(t *testing.T) {
return
}
if tc.isMap { // map keys sorting order is not guaranteed, so we convert back to golang maps and compare
var gotJSON, wantJSON map[string]interface{}
var gotJSON, wantJSON map[string]any
err = json.Unmarshal([]byte(val), &gotJSON)
require.NoError(t, err)
err = json.Unmarshal([]byte(tc.expected), &wantJSON)

Просмотреть файл

@ -78,18 +78,18 @@ func NewCollation(name string, weights Weights, weightPatches []Patch, reorder [
switch {
case coll.param == nil && len(weightPatches) == 0 && coll.contract == nil:
coll.iterpool.New = func() interface{} {
coll.iterpool.New = func() any {
return &FastIterator900{iterator900: iterator900{Collation900: *coll}}
}
case name == "utf8mb4_ja_0900_as_cs_ks" || name == "utf8mb4_ja_0900_as_cs":
coll.iterpool.New = func() interface{} {
coll.iterpool.New = func() any {
return &jaIterator900{iterator900: iterator900{Collation900: *coll}}
}
case name == "utf8mb4_zh_0900_as_cs":
coll.implicits = unicodeImplicitChineseWeights
fallthrough
default:
coll.iterpool.New = func() interface{} {
coll.iterpool.New = func() any {
return &slowIterator900{iterator900: iterator900{Collation900: *coll}}
}
}
@ -143,7 +143,7 @@ func NewCollationLegacy(cs charset.Charset, weights Weights, weightPatches []Pat
iterpool: &sync.Pool{},
}
coll.iterpool.New = func() interface{} {
coll.iterpool.New = func() any {
return &WeightIteratorLegacy{CollationLegacy: *coll}
}

Просмотреть файл

@ -108,7 +108,7 @@ func (g *Generator) Fail(err string) {
os.Exit(1)
}
func (g *Generator) printArray(iface interface{}) {
func (g *Generator) printArray(iface any) {
switch ary := iface.(type) {
case Array8:
g.WriteString("[...]uint8{")
@ -156,7 +156,7 @@ func (g *Generator) UsePackage(pkg Package) {
g.imported[pkg] = false
}
func (g *Generator) printAtom(v interface{}) {
func (g *Generator) printAtom(v any) {
switch v := v.(type) {
case string:
g.WriteString(v)
@ -199,7 +199,7 @@ func (pkg Package) Name() string {
return path.Base(string(pkg))
}
func (g *Generator) P(str ...interface{}) {
func (g *Generator) P(str ...any) {
for _, v := range str {
g.printAtom(v)
}

Просмотреть файл

@ -81,7 +81,7 @@ func diffMaps(orgWeights, modWeights TailoringWeights) (diff []uca.Patch) {
return
}
func (g *TableGenerator) dedupTable(name, coll string, val interface{}) (string, bool) {
func (g *TableGenerator) dedupTable(name, coll string, val any) (string, bool) {
raw := fmt.Sprintf("%#v", val)
if exist, ok := g.dedup[raw]; ok {
return exist, true
@ -242,7 +242,7 @@ func (g *Generator) printCollationUca900(meta *CollationMetadata) {
g.P("})")
}
func (g *TableGenerator) printSlice(name, coll string, slice interface{}) string {
func (g *TableGenerator) printSlice(name, coll string, slice any) string {
tableName, dedup := g.dedupTable(name, coll, slice)
if !dedup {
g.P("var ", tableName, " = ", slice)

Просмотреть файл

@ -33,7 +33,7 @@ import (
"vitess.io/vitess/go/mysql/collations/internal/testutil"
)
func wikiRequest(lang testutil.Lang, args map[string]string, output interface{}) error {
func wikiRequest(lang testutil.Lang, args map[string]string, output any) error {
wikipedia := fmt.Sprintf("https://%s.wikipedia.org/w/api.php", lang)
req, err := http.NewRequest("GET", wikipedia, nil)
if err != nil {

Просмотреть файл

@ -105,7 +105,7 @@ type Conn struct {
// ClientData is a place where an application can store any
// connection-related data. Mostly used on the server side, to
// avoid maps indexed by ConnectionID for instance.
ClientData interface{}
ClientData any
// conn is the underlying network connection.
// Calling Close() on the Conn will close this connection.
@ -230,7 +230,7 @@ const (
var bufPool = bucketpool.New(connBufferSize, MaxPacketSize)
// writersPool is used for pooling bufio.Writer objects.
var writersPool = sync.Pool{New: func() interface{} { return bufio.NewWriterSize(nil, connBufferSize) }}
var writersPool = sync.Pool{New: func() any { return bufio.NewWriterSize(nil, connBufferSize) }}
// newConn is an internal method to create a Conn. Used by client and server
// side for common creation code.
@ -801,7 +801,7 @@ func getLenEncInt(i uint64) []byte {
return data
}
func (c *Conn) writeErrorAndLog(errorCode uint16, sqlState string, format string, args ...interface{}) bool {
func (c *Conn) writeErrorAndLog(errorCode uint16, sqlState string, format string, args ...any) bool {
if err := c.writeErrorPacket(errorCode, sqlState, format, args...); err != nil {
log.Errorf("Error writing error to %s: %v", c, err)
return false
@ -821,7 +821,7 @@ func (c *Conn) writeErrorPacketFromErrorAndLog(err error) bool {
// writeErrorPacket writes an error packet.
// Server -> Client.
// This method returns a generic error, not a SQLError.
func (c *Conn) writeErrorPacket(errorCode uint16, sqlState string, format string, args ...interface{}) error {
func (c *Conn) writeErrorPacket(errorCode uint16, sqlState string, format string, args ...any) error {
errorMessage := fmt.Sprintf(format, args...)
length := 1 + 2 + 1 + 5 + len(errorMessage)
data, pos := c.startEphemeralPacketWithHeader(length)
@ -1419,7 +1419,7 @@ func (c *Conn) parseOKPacket(in []byte) (*PacketOK, error) {
}
packetOK := &PacketOK{}
fail := func(format string, args ...interface{}) (*PacketOK, error) {
fail := func(format string, args ...any) (*PacketOK, error) {
return nil, vterrors.Errorf(vtrpcpb.Code_INTERNAL, format, args...)
}

Просмотреть файл

@ -70,17 +70,17 @@ func (gtid filePosGTID) Flavor() string {
}
// SequenceDomain implements GTID.SequenceDomain().
func (gtid filePosGTID) SequenceDomain() interface{} {
func (gtid filePosGTID) SequenceDomain() any {
return nil
}
// SourceServer implements GTID.SourceServer().
func (gtid filePosGTID) SourceServer() interface{} {
func (gtid filePosGTID) SourceServer() any {
return nil
}
// SequenceNumber implements GTID.SequenceNumber().
func (gtid filePosGTID) SequenceNumber() interface{} {
func (gtid filePosGTID) SequenceNumber() any {
return nil
}

Просмотреть файл

@ -40,16 +40,16 @@ type GTID interface {
Flavor() string
// SourceServer returns the ID of the server that generated the transaction.
SourceServer() interface{}
SourceServer() any
// SequenceNumber returns the ID number that increases with each transaction.
// It is only valid to compare the sequence numbers of two GTIDs if they have
// the same domain value.
SequenceNumber() interface{}
SequenceNumber() any
// SequenceDomain returns the ID of the domain within which two sequence
// numbers can be meaningfully compared.
SequenceDomain() interface{}
SequenceDomain() any
// GTIDSet returns a GTIDSet of the same flavor as this GTID, containing only
// this GTID.

Просмотреть файл

@ -192,13 +192,13 @@ type fakeGTID struct {
flavor, value string
}
func (f fakeGTID) String() string { return f.value }
func (f fakeGTID) Last() string { panic("not implemented") }
func (f fakeGTID) Flavor() string { return f.flavor }
func (fakeGTID) SourceServer() interface{} { return int(1) }
func (fakeGTID) SequenceNumber() interface{} { return int(1) }
func (fakeGTID) SequenceDomain() interface{} { return int(1) }
func (f fakeGTID) GTIDSet() GTIDSet { return nil }
func (f fakeGTID) String() string { return f.value }
func (f fakeGTID) Last() string { panic("not implemented") }
func (f fakeGTID) Flavor() string { return f.flavor }
func (fakeGTID) SourceServer() any { return int(1) }
func (fakeGTID) SequenceNumber() any { return int(1) }
func (fakeGTID) SequenceDomain() any { return int(1) }
func (f fakeGTID) GTIDSet() GTIDSet { return nil }
func (fakeGTID) ContainsGTID(GTID) bool { return false }
func (fakeGTID) Contains(GTIDSet) bool { return false }

Просмотреть файл

@ -98,17 +98,17 @@ func (gtid MariadbGTID) Flavor() string {
}
// SequenceDomain implements GTID.SequenceDomain().
func (gtid MariadbGTID) SequenceDomain() interface{} {
func (gtid MariadbGTID) SequenceDomain() any {
return gtid.Domain
}
// SourceServer implements GTID.SourceServer().
func (gtid MariadbGTID) SourceServer() interface{} {
func (gtid MariadbGTID) SourceServer() any {
return gtid.Server
}
// SequenceNumber implements GTID.SequenceNumber().
func (gtid MariadbGTID) SequenceNumber() interface{} {
func (gtid MariadbGTID) SequenceNumber() any {
return gtid.Sequence
}

Просмотреть файл

@ -141,7 +141,7 @@ func TestMariaGTIDFlavor(t *testing.T) {
func TestMariaGTIDSequenceDomain(t *testing.T) {
input := MariadbGTID{Domain: 12, Server: 345, Sequence: 6789}
want := interface{}(uint32(12))
want := any(uint32(12))
got := input.SequenceDomain()
if got != want {
@ -151,7 +151,7 @@ func TestMariaGTIDSequenceDomain(t *testing.T) {
func TestMariaGTIDSourceServer(t *testing.T) {
input := MariadbGTID{Domain: 12, Server: 345, Sequence: 6789}
want := interface{}(uint32(345))
want := any(uint32(345))
got := input.SourceServer()
if got != want {
@ -161,7 +161,7 @@ func TestMariaGTIDSourceServer(t *testing.T) {
func TestMariaGTIDSequenceNumber(t *testing.T) {
input := MariadbGTID{Domain: 12, Server: 345, Sequence: 6789}
want := interface{}(uint64(6789))
want := any(uint64(6789))
got := input.SequenceNumber()
if got != want {

Просмотреть файл

@ -106,17 +106,17 @@ func (gtid Mysql56GTID) Flavor() string {
}
// SequenceDomain implements GTID.SequenceDomain().
func (gtid Mysql56GTID) SequenceDomain() interface{} {
func (gtid Mysql56GTID) SequenceDomain() any {
return nil
}
// SourceServer implements GTID.SourceServer().
func (gtid Mysql56GTID) SourceServer() interface{} {
func (gtid Mysql56GTID) SourceServer() any {
return gtid.Server
}
// SequenceNumber implements GTID.SequenceNumber().
func (gtid Mysql56GTID) SequenceNumber() interface{} {
func (gtid Mysql56GTID) SequenceNumber() any {
return gtid.Sequence
}

Просмотреть файл

@ -112,7 +112,7 @@ func TestMysql56GTIDFlavor(t *testing.T) {
func TestMysql56SequenceDomain(t *testing.T) {
input := Mysql56GTID{}
if got, want := input.SequenceDomain(), interface{}(nil); got != want {
if got, want := input.SequenceDomain(), any(nil); got != want {
t.Errorf("%#v.SequenceDomain() = %#v, want %#v", input, got, want)
}
}
@ -121,7 +121,7 @@ func TestMysql56SourceServer(t *testing.T) {
input := Mysql56GTID{
Server: SID{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15},
}
want := interface{}(SID{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15})
want := any(SID{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15})
if got := input.SourceServer(); got != want {
t.Errorf("%#v.SourceServer() = %#v, want %#v", input, got, want)
}
@ -132,7 +132,7 @@ func TestMysql56SequenceNumber(t *testing.T) {
Server: SID{0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15},
Sequence: 5432,
}
want := interface{}(int64(5432))
want := any(int64(5432))
if got := input.SequenceNumber(); got != want {
t.Errorf("%#v.SequenceNumber() = %#v, want %#v", input, got, want)
}

Просмотреть файл

@ -39,7 +39,7 @@ type SQLError struct {
// NewSQLError creates a new SQLError.
// If sqlState is left empty, it will default to "HY000" (general error).
// TODO: Should be aligned with vterrors, stack traces and wrapping
func NewSQLError(number int, sqlState string, format string, args ...interface{}) *SQLError {
func NewSQLError(number int, sqlState string, format string, args ...any) *SQLError {
if sqlState == "" {
sqlState = SSUnknownSQLState
}

Просмотреть файл

@ -34,7 +34,7 @@ type Numbered struct {
}
type numberedWrapper struct {
val interface{}
val any
inUse bool
purpose string
timeCreated time.Time
@ -51,7 +51,7 @@ type unregistered struct {
func NewNumbered() *Numbered {
n := &Numbered{
resources: make(map[int64]*numberedWrapper),
recentlyUnregistered: cache.NewLRUCache(1000, func(_ interface{}) int64 {
recentlyUnregistered: cache.NewLRUCache(1000, func(_ any) int64 {
return 1
}),
}
@ -62,7 +62,7 @@ func NewNumbered() *Numbered {
// Register starts tracking a resource by the supplied id.
// It does not lock the object.
// It returns an error if the id already exists.
func (nu *Numbered) Register(id int64, val interface{}, enforceTimeout bool) error {
func (nu *Numbered) Register(id int64, val any, enforceTimeout bool) error {
// Optimistically assume we're not double registering.
now := time.Now()
resource := &numberedWrapper{
@ -109,7 +109,7 @@ func (nu *Numbered) unregister(id int64) bool {
// Get locks the resource for use. It accepts a purpose as a string.
// If it cannot be found, it returns a "not found" error. If in use,
// it returns a "in use: purpose" error.
func (nu *Numbered) Get(id int64, purpose string) (val interface{}, err error) {
func (nu *Numbered) Get(id int64, purpose string) (val any, err error) {
nu.mu.Lock()
defer nu.mu.Unlock()
nw, ok := nu.resources[id]
@ -142,10 +142,10 @@ func (nu *Numbered) Put(id int64, updateTime bool) {
}
// GetAll returns the list of all resources in the pool.
func (nu *Numbered) GetAll() (vals []interface{}) {
func (nu *Numbered) GetAll() (vals []any) {
nu.mu.Lock()
defer nu.mu.Unlock()
vals = make([]interface{}, 0, len(nu.resources))
vals = make([]any, 0, len(nu.resources))
for _, nw := range nu.resources {
vals = append(vals, nw.val)
}
@ -154,7 +154,7 @@ func (nu *Numbered) GetAll() (vals []interface{}) {
// GetByFilter returns a list of resources that match the filter.
// It does not return any resources that are already locked.
func (nu *Numbered) GetByFilter(purpose string, match func(val interface{}) bool) (vals []interface{}) {
func (nu *Numbered) GetByFilter(purpose string, match func(val any) bool) (vals []any) {
nu.mu.Lock()
defer nu.mu.Unlock()
for _, nw := range nu.resources {
@ -172,7 +172,7 @@ func (nu *Numbered) GetByFilter(purpose string, match func(val interface{}) bool
// GetOutdated returns a list of resources that are older than age, and locks them.
// It does not return any resources that are already locked.
func (nu *Numbered) GetOutdated(age time.Duration, purpose string) (vals []interface{}) {
func (nu *Numbered) GetOutdated(age time.Duration, purpose string) (vals []any) {
nu.mu.Lock()
defer nu.mu.Unlock()
now := time.Now()
@ -192,7 +192,7 @@ func (nu *Numbered) GetOutdated(age time.Duration, purpose string) (vals []inter
// GetIdle returns a list of resurces that have been idle for longer
// than timeout, and locks them. It does not return any resources that
// are already locked.
func (nu *Numbered) GetIdle(timeout time.Duration, purpose string) (vals []interface{}) {
func (nu *Numbered) GetIdle(timeout time.Duration, purpose string) (vals []any) {
nu.mu.Lock()
defer nu.mu.Unlock()
now := time.Now()

Просмотреть файл

@ -36,7 +36,7 @@ func TestNumberedGeneral(t *testing.T) {
err = p.Register(id, id, true)
assert.Contains(t, "already present", err.Error())
var v interface{}
var v any
v, err = p.Get(id, "test")
require.NoError(t, err)
assert.Equal(t, id, v.(int64))
@ -112,10 +112,10 @@ func TestNumberedGetByFilter(t *testing.T) {
p.Register(3, 3, true)
p.Get(1, "locked")
vals := p.GetByFilter("filtered", func(v interface{}) bool {
vals := p.GetByFilter("filtered", func(v any) bool {
return v.(int) <= 2
})
want := []interface{}{2}
want := []any{2}
assert.Equal(t, want, vals)
}

Просмотреть файл

@ -51,7 +51,7 @@ func ProtoToValue(v *querypb.Value) Value {
}
// BuildBindVariables builds a map[string]*querypb.BindVariable from a map[string]interface{}.
func BuildBindVariables(in map[string]interface{}) (map[string]*querypb.BindVariable, error) {
func BuildBindVariables(in map[string]any) (map[string]*querypb.BindVariable, error) {
if len(in) == 0 {
return nil, nil
}
@ -136,7 +136,7 @@ func ValueBindVariable(v Value) *querypb.BindVariable {
}
// BuildBindVariable builds a *querypb.BindVariable from a valid input type.
func BuildBindVariable(v interface{}) (*querypb.BindVariable, error) {
func BuildBindVariable(v any) (*querypb.BindVariable, error) {
switch v := v.(type) {
case string:
return StringBindVariable(v), nil
@ -166,7 +166,7 @@ func BuildBindVariable(v interface{}) (*querypb.BindVariable, error) {
return ValueBindVariable(v), nil
case *querypb.BindVariable:
return v, nil
case []interface{}:
case []any:
bv := &querypb.BindVariable{
Type: querypb.Type_TUPLE,
Values: make([]*querypb.Value, len(v)),

Просмотреть файл

@ -43,21 +43,21 @@ func TestProtoConversions(t *testing.T) {
func TestBuildBindVariables(t *testing.T) {
tcases := []struct {
in map[string]interface{}
in map[string]any
out map[string]*querypb.BindVariable
err string
}{{
in: nil,
out: nil,
}, {
in: map[string]interface{}{
in: map[string]any{
"k": int64(1),
},
out: map[string]*querypb.BindVariable{
"k": Int64BindVariable(1),
},
}, {
in: map[string]interface{}{
in: map[string]any{
"k": byte(1),
},
err: "k: type uint8 not supported as bind var: 1",
@ -82,7 +82,7 @@ func TestBuildBindVariables(t *testing.T) {
func TestBuildBindVariable(t *testing.T) {
tcases := []struct {
in interface{}
in any
out *querypb.BindVariable
err string
}{{
@ -152,7 +152,7 @@ func TestBuildBindVariable(t *testing.T) {
Value: []byte("1"),
},
}, {
in: []interface{}{"aa", int64(1)},
in: []any{"aa", int64(1)},
out: &querypb.BindVariable{
Type: querypb.Type_TUPLE,
Values: []*querypb.Value{{
@ -239,7 +239,7 @@ func TestBuildBindVariable(t *testing.T) {
in: byte(1),
err: "type uint8 not supported as bind var: 1",
}, {
in: []interface{}{1, byte(1)},
in: []any{1, byte(1)},
err: "type uint8 not supported as bind var: 1",
}}
for _, tcase := range tcases {

Просмотреть файл

@ -113,7 +113,7 @@ func MakeTestStreamingResults(fields []*querypb.Field, rows ...string) []*Result
// TestBindVariable makes a *querypb.BindVariable from
// an interface{}.It panics on invalid input.
// This function should only be used for testing.
func TestBindVariable(v interface{}) *querypb.BindVariable {
func TestBindVariable(v any) *querypb.BindVariable {
if v == nil {
return NullBindVariable
}

Просмотреть файл

@ -205,7 +205,7 @@ func NewIntegral(val string) (n Value, err error) {
// string and []byte.
// This function is deprecated. Use the type-specific
// functions instead.
func InterfaceToValue(goval interface{}) (Value, error) {
func InterfaceToValue(goval any) (Value, error) {
switch goval := goval.(type) {
case nil:
return NULL, nil
@ -458,7 +458,7 @@ func (v *Value) UnmarshalJSON(b []byte) error {
if len(b) == 0 {
return fmt.Errorf("error unmarshaling empty bytes")
}
var val interface{}
var val any
var err error
switch b[0] {
case '-':

Просмотреть файл

@ -261,7 +261,7 @@ func TestIntegralValue(t *testing.T) {
func TestInterfaceValue(t *testing.T) {
testcases := []struct {
in interface{}
in any
out Value
}{{
in: nil,

Просмотреть файл

@ -247,7 +247,7 @@ func (dc *dataCollector) addExpVar(kv expvar.KeyValue) {
default:
// Deal with generic expvars by converting them to JSON and pulling out
// all the floats. Strings and lists will not be exported to opentsdb.
var obj map[string]interface{}
var obj map[string]any
if err := json.Unmarshal([]byte(v.String()), &obj); err != nil {
return
}
@ -274,11 +274,11 @@ func makeLabels(labelNames []string, labelValsCombined string) map[string]string
}
// addUnrecognizedExpvars recurses into a json object to pull out float64 variables to report.
func (dc *dataCollector) addUnrecognizedExpvars(prefix string, obj map[string]interface{}) {
func (dc *dataCollector) addUnrecognizedExpvars(prefix string, obj map[string]any) {
for k, v := range obj {
prefix := combineMetricName(prefix, k)
switch v := v.(type) {
case map[string]interface{}:
case map[string]any:
dc.addUnrecognizedExpvars(prefix, v)
case float64:
dc.addFloat(prefix, v, nil)

Просмотреть файл

@ -375,14 +375,14 @@ func checkOutput(t *testing.T, statName string, wantJSON string) {
t.Errorf("Failed to marshal json: %v", err)
return
}
var got interface{}
var got any
err = json.Unmarshal(gotBytes, &got)
if err != nil {
t.Errorf("Failed to marshal json: %v", err)
return
}
var want interface{}
var want any
err = json.Unmarshal([]byte(wantJSON), &want)
if err != nil {
t.Errorf("Failed to marshal json: %v", err)

Просмотреть файл

@ -174,7 +174,7 @@ func (sb StatsBackend) addExpVar(kv expvar.KeyValue) {
case expvar.Func:
// Export memstats as gauge so that we don't need to call extra ReadMemStats
if k == "memstats" {
var obj map[string]interface{}
var obj map[string]any
if err := json.Unmarshal([]byte(v.String()), &obj); err != nil {
return
}

Просмотреть файл

@ -72,12 +72,12 @@ type StreamLogger struct {
name string
size int
mu sync.Mutex
subscribed map[chan interface{}]string
subscribed map[chan any]string
}
// LogFormatter is the function signature used to format an arbitrary
// message for the given output writer.
type LogFormatter func(out io.Writer, params url.Values, message interface{}) error
type LogFormatter func(out io.Writer, params url.Values, message any) error
// New returns a new StreamLogger that can stream events to subscribers.
// The size parameter defines the channel size for the subscribers.
@ -85,13 +85,13 @@ func New(name string, size int) *StreamLogger {
return &StreamLogger{
name: name,
size: size,
subscribed: make(map[chan interface{}]string),
subscribed: make(map[chan any]string),
}
}
// Send sends message to all the writers subscribed to logger. Calling
// Send does not block.
func (logger *StreamLogger) Send(message interface{}) {
func (logger *StreamLogger) Send(message any) {
logger.mu.Lock()
defer logger.mu.Unlock()
@ -108,17 +108,17 @@ func (logger *StreamLogger) Send(message interface{}) {
// Subscribe returns a channel which can be used to listen
// for messages.
func (logger *StreamLogger) Subscribe(name string) chan interface{} {
func (logger *StreamLogger) Subscribe(name string) chan any {
logger.mu.Lock()
defer logger.mu.Unlock()
ch := make(chan interface{}, logger.size)
ch := make(chan any, logger.size)
logger.subscribed[ch] = name
return ch
}
// Unsubscribe removes the channel from the subscription.
func (logger *StreamLogger) Unsubscribe(ch chan interface{}) {
func (logger *StreamLogger) Unsubscribe(ch chan any) {
logger.mu.Lock()
defer logger.mu.Unlock()
@ -163,7 +163,7 @@ func (logger *StreamLogger) ServeLogs(url string, logf LogFormatter) {
//
// Returns the channel used for the subscription which can be used to close
// it.
func (logger *StreamLogger) LogToFile(path string, logf LogFormatter) (chan interface{}, error) {
func (logger *StreamLogger) LogToFile(path string, logf LogFormatter) (chan any, error) {
rotateChan := make(chan os.Signal, 1)
signal.Notify(rotateChan, syscall.SIGUSR2)
@ -199,7 +199,7 @@ type Formatter interface {
// GetFormatter returns a formatter function for objects conforming to the
// Formatter interface
func GetFormatter(logger *StreamLogger) LogFormatter {
return func(w io.Writer, params url.Values, val interface{}) error {
return func(w io.Writer, params url.Values, val any) error {
fmter, ok := val.(Formatter)
if !ok {
_, err := fmt.Fprintf(w, "Error: unexpected value of type %T in %s!", val, logger.Name())

Просмотреть файл

@ -38,7 +38,7 @@ func (l *logMessage) Format(params url.Values) string {
return l.val + "\n"
}
func testLogf(w io.Writer, params url.Values, m interface{}) error {
func testLogf(w io.Writer, params url.Values, m any) error {
_, err := io.WriteString(w, m.(*logMessage).Format(params))
return err
}

Просмотреть файл

@ -48,7 +48,7 @@ type Result struct {
executing sync.RWMutex
consolidator *Consolidator
query string
Result interface{}
Result any
Err error
}
@ -94,7 +94,7 @@ type ConsolidatorCache struct {
// NewConsolidatorCache creates a new cache with the given capacity.
func NewConsolidatorCache(capacity int64) *ConsolidatorCache {
return &ConsolidatorCache{cache.NewLRUCache(capacity, func(_ interface{}) int64 {
return &ConsolidatorCache{cache.NewLRUCache(capacity, func(_ any) int64 {
return 1
})}
}

Просмотреть файл

@ -57,7 +57,7 @@ func (e stackError) StackTrace() string {
return e.stackTrace
}
func Errorf(msg string, args ...interface{}) error {
func Errorf(msg string, args ...any) error {
stack := ""
// See if any arg is already embedding a stack - no need to
// recompute something expensive and make the message unreadable.

Просмотреть файл

@ -312,7 +312,7 @@ func validateManifestFile(t *testing.T, backupLocation string) {
// reading manifest
data, err := os.ReadFile(backupLocation + "/MANIFEST")
require.Nilf(t, err, "error while reading MANIFEST %v", err)
manifest := make(map[string]interface{})
manifest := make(map[string]any)
// parsing manifest
err = json.Unmarshal(data, &manifest)
@ -326,7 +326,7 @@ func validateManifestFile(t *testing.T, backupLocation string) {
// validate backup files
fielEntries := manifest["FileEntries"]
fileArr, ok := fielEntries.([]interface{})
fileArr, ok := fielEntries.([]any)
require.True(t, ok)
for i := range fileArr {
f, err := os.Open(fmt.Sprintf("%s/%d", backupLocation, i))

Просмотреть файл

@ -247,7 +247,7 @@ func (cluster *LocalProcessCluster) StartUnshardedKeyspace(keyspace Keyspace, re
// rdonly: whether readonly tablets needed
// customizers: functions like "func(*VttabletProcess)" that can modify settings of various objects
// after they're created.
func (cluster *LocalProcessCluster) StartKeyspace(keyspace Keyspace, shardNames []string, replicaCount int, rdonly bool, customizers ...interface{}) (err error) {
func (cluster *LocalProcessCluster) StartKeyspace(keyspace Keyspace, shardNames []string, replicaCount int, rdonly bool, customizers ...any) (err error) {
totalTabletsRequired := replicaCount + 1 // + 1 is for primary
if rdonly {
totalTabletsRequired = totalTabletsRequired + 1 // + 1 for rdonly
@ -388,7 +388,7 @@ func (cluster *LocalProcessCluster) StartUnshardedKeyspaceLegacy(keyspace Keyspa
// rdonly: whether readonly tablets needed
// customizers: functions like "func(*VttabletProcess)" that can modify settings of various objects
// after they're created.
func (cluster *LocalProcessCluster) StartKeyspaceLegacy(keyspace Keyspace, shardNames []string, replicaCount int, rdonly bool, customizers ...interface{}) (err error) {
func (cluster *LocalProcessCluster) StartKeyspaceLegacy(keyspace Keyspace, shardNames []string, replicaCount int, rdonly bool, customizers ...any) (err error) {
totalTabletsRequired := replicaCount + 1 // + 1 is for primary
if rdonly {
totalTabletsRequired = totalTabletsRequired + 1 // + 1 for rdonly

Просмотреть файл

@ -157,7 +157,7 @@ func (vtgate *VtgateProcess) GetStatusForTabletOfShard(name string, endPointsCou
return false
}
if resp.StatusCode == 200 {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err := json.Unmarshal(respByte, &resultMap)
if err != nil {
@ -258,8 +258,8 @@ func VtgateProcessInstance(
}
// GetVars returns map of vars
func (vtgate *VtgateProcess) GetVars() (map[string]interface{}, error) {
resultMap := make(map[string]interface{})
func (vtgate *VtgateProcess) GetVars() (map[string]any, error) {
resultMap := make(map[string]any)
resp, err := http.Get(vtgate.VerifyURL)
if err != nil {
return nil, fmt.Errorf("error getting response from %s", vtgate.VerifyURL)

Просмотреть файл

@ -173,13 +173,13 @@ func (vttablet *VttabletProcess) GetStatus() string {
}
// GetVars gets the debug vars as map
func (vttablet *VttabletProcess) GetVars() map[string]interface{} {
func (vttablet *VttabletProcess) GetVars() map[string]any {
resp, err := http.Get(vttablet.VerifyURL)
if err != nil {
return nil
}
if resp.StatusCode == 200 {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err := json.Unmarshal(respByte, &resultMap)
if err != nil {

Просмотреть файл

@ -215,8 +215,8 @@ func VtworkerProcessInstance(httpPort int, grpcPort int, topoPort int, hostname
}
// GetVars returns map of vars
func (vtworker *VtworkerProcess) GetVars() (map[string]interface{}, error) {
resultMap := make(map[string]interface{})
func (vtworker *VtworkerProcess) GetVars() (map[string]any, error) {
resultMap := make(map[string]any)
resp, err := http.Get(vtworker.VerifyURL)
if err != nil {
return nil, fmt.Errorf("error getting response from %s", vtworker.VerifyURL)

Просмотреть файл

@ -65,7 +65,7 @@ func testTopoDataAPI(t *testing.T, url string) {
require.Nil(t, err)
assert.Equal(t, resp.StatusCode, 200)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err = json.Unmarshal(respByte, &resultMap)
require.Nil(t, err)

Просмотреть файл

@ -54,7 +54,7 @@ func TestVtgateProcess(t *testing.T) {
func verifyVtgateVariables(t *testing.T, url string) {
resp, _ := http.Get(url)
if resp != nil && resp.StatusCode == 200 {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err := json.Unmarshal(respByte, &resultMap)
require.Nil(t, err)
@ -90,8 +90,8 @@ func verifyVtgateVariables(t *testing.T, url string) {
}
}
func getMapFromJSON(JSON map[string]interface{}, key string) map[string]interface{} {
result := make(map[string]interface{})
func getMapFromJSON(JSON map[string]any, key string) map[string]any {
result := make(map[string]any)
object := reflect.ValueOf(JSON[key])
if object.Kind() == reflect.Map {
for _, key := range object.MapKeys() {
@ -102,7 +102,7 @@ func getMapFromJSON(JSON map[string]interface{}, key string) map[string]interfac
return result
}
func isPrimaryTabletPresent(tablets map[string]interface{}) bool {
func isPrimaryTabletPresent(tablets map[string]any) bool {
for key := range tablets {
if strings.Contains(key, "primary") {
return true

Просмотреть файл

@ -34,7 +34,7 @@ func TestVttabletProcess(t *testing.T) {
firstTabletPort := clusterInstance.Keyspaces[0].Shards[0].Vttablets[0].HTTPPort
testURL(t, fmt.Sprintf("http://localhost:%d/debug/vars/", firstTabletPort), "tablet debug var url")
resp, _ := http.Get(fmt.Sprintf("http://localhost:%d/debug/vars", firstTabletPort))
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err := json.Unmarshal(respByte, &resultMap)
if err != nil {

Просмотреть файл

@ -517,7 +517,7 @@ func getClientCount(vttablet *cluster.Vttablet) int {
return 0
}
v, ok := msg.(map[string]interface{})
v, ok := msg.(map[string]any)
if !ok {
return 0
}
@ -536,13 +536,13 @@ func getClientCount(vttablet *cluster.Vttablet) int {
}
// getVar read debug vars from the vttablet.
func getVar(vttablet *cluster.Vttablet) (map[string]interface{}, error) {
func getVar(vttablet *cluster.Vttablet) (map[string]any, error) {
resp, err := http.Get(fmt.Sprintf("http://%s:%d/debug/vars", vttablet.VttabletProcess.TabletHostname, vttablet.HTTPPort))
if err != nil {
return nil, err
}
if resp.StatusCode == 200 {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err := json.Unmarshal(respByte, &resultMap)
return resultMap, err

Просмотреть файл

@ -251,7 +251,7 @@ func startCluster(t *testing.T) string {
return yamlFile
}
func createKeyspace(t *testing.T, ks cluster.Keyspace, shards []string, customizers ...interface{}) {
func createKeyspace(t *testing.T, ks cluster.Keyspace, shards []string, customizers ...any) {
t.Helper()
err := clusterInstance.StartKeyspace(ks, shards, 1, false, customizers...)

Просмотреть файл

@ -261,7 +261,7 @@ func Connect(t *testing.T, params ...string) *sql.DB {
}
// execWithError executes the prepared query, and validates the error_code.
func execWithError(t *testing.T, dbo *sql.DB, errorCodes []uint16, stmt string, params ...interface{}) {
func execWithError(t *testing.T, dbo *sql.DB, errorCodes []uint16, stmt string, params ...any) {
_, err := dbo.Exec(stmt, params...)
require.NotNilf(t, err, "error expected, got nil")
mysqlErr, ok := err.(*mysql.MySQLError)
@ -270,12 +270,12 @@ func execWithError(t *testing.T, dbo *sql.DB, errorCodes []uint16, stmt string,
}
// exec executes the query using the params.
func exec(t *testing.T, dbo *sql.DB, stmt string, params ...interface{}) {
func exec(t *testing.T, dbo *sql.DB, stmt string, params ...any) {
require.Nil(t, execErr(dbo, stmt, params...))
}
// execErr executes the query and returns an error if one occurs.
func execErr(dbo *sql.DB, stmt string, params ...interface{}) *mysql.MySQLError {
func execErr(dbo *sql.DB, stmt string, params ...any) *mysql.MySQLError {
if _, err := dbo.Exec(stmt, params...); err != nil {
// TODO : need to handle
mysqlErr, _ := err.(*mysql.MySQLError)
@ -285,7 +285,7 @@ func execErr(dbo *sql.DB, stmt string, params ...interface{}) *mysql.MySQLError
}
// selectWhere select the row corresponding to the where condition.
func selectWhere(t *testing.T, dbo *sql.DB, where string, params ...interface{}) []tableData {
func selectWhere(t *testing.T, dbo *sql.DB, where string, params ...any) []tableData {
var out []tableData
// prepare query
qry := "SELECT msg, data, text_col, t_datetime, t_datetime_micros FROM " + tableName
@ -307,7 +307,7 @@ func selectWhere(t *testing.T, dbo *sql.DB, where string, params ...interface{})
}
// selectWhereWithTx select the row corresponding to the where condition.
func selectWhereWithTx(t *testing.T, tx *sql.Tx, where string, params ...interface{}) []tableData {
func selectWhereWithTx(t *testing.T, tx *sql.Tx, where string, params ...any) []tableData {
var out []tableData
// prepare query
qry := "SELECT msg, data, text_col, t_datetime, t_datetime_micros FROM " + tableName

Просмотреть файл

@ -73,7 +73,7 @@ func TestInsertUpdateDelete(t *testing.T) {
// inserting multiple rows into test table
for i := 1; i <= 100; i++ {
// preparing value for the insert testing
insertValue := []interface{}{
insertValue := []any{
i, strconv.FormatInt(int64(i), 10) + "21", i * 100,
127, 1, 32767, 8388607, 2147483647, 2.55, 64.9, 55.5,
time.Date(2009, 5, 5, 0, 0, 0, 50000, time.UTC),
@ -165,7 +165,7 @@ func TestAutoIncColumns(t *testing.T) {
) VALUES (?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?,
?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?);`
insertValue := []interface{}{
insertValue := []any{
"21", 0,
127, 1, 32767, 8388607, 2147483647, 2.55, 64.9, 55.5,
time.Date(2009, 5, 5, 0, 0, 0, 50000, time.UTC),
@ -235,7 +235,7 @@ func TestColumnParameter(t *testing.T) {
parameter1 := "param1"
message := "TestColumnParameter"
insertStmt := "INSERT INTO " + tableName + " (id, msg, keyspace_id) VALUES (?, ?, ?);"
values := []interface{}{
values := []any{
id,
message,
2000,

Просмотреть файл

@ -702,7 +702,7 @@ func positionAtLeast(t *testing.T, tablet *cluster.Vttablet, a string, b string)
}
func assertNodeCount(t *testing.T, result string, want int) {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err := json.Unmarshal([]byte(result), &resultMap)
require.NoError(t, err)

Просмотреть файл

@ -229,7 +229,7 @@ func TestMergesharding(t *testing.T, useVarbinaryShardingKeyType bool) {
// check for shards
result, err := clusterInstance.VtctlclientProcess.ExecuteCommandWithOutput("FindAllShardsInKeyspace", keyspaceName)
require.NoError(t, err)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err = json.Unmarshal([]byte(result), &resultMap)
require.NoError(t, err)
assert.Equal(t, 4, len(resultMap), "No of shards should be 4")

Просмотреть файл

@ -320,7 +320,7 @@ func TestResharding(t *testing.T, useVarbinaryShardingKeyType bool) {
// check for shards
result, err := clusterInstance.VtctlclientProcess.ExecuteCommandWithOutput("FindAllShardsInKeyspace", keyspaceName)
require.Nil(t, err)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err = json.Unmarshal([]byte(result), &resultMap)
require.Nil(t, err)
assert.Equal(t, 4, len(resultMap), "No of shards should be 4")

Просмотреть файл

@ -469,21 +469,21 @@ func checkStats(t *testing.T) {
resultMap, err := clusterInstance.VtgateProcess.GetVars()
require.NoError(t, err)
resultVtTabletCall := resultMap["VttabletCall"]
resultVtTabletCallMap := resultVtTabletCall.(map[string]interface{})
resultVtTabletCallMap := resultVtTabletCall.(map[string]any)
resultHistograms := resultVtTabletCallMap["Histograms"]
resultHistogramsMap := resultHistograms.(map[string]interface{})
resultHistogramsMap := resultHistograms.(map[string]any)
resultTablet := resultHistogramsMap["Execute.source_keyspace.0.replica"]
resultTableMap := resultTablet.(map[string]interface{})
resultTableMap := resultTablet.(map[string]any)
resultCountStr := fmt.Sprintf("%v", reflect.ValueOf(resultTableMap["Count"]))
assert.Equal(t, "2", resultCountStr, fmt.Sprintf("unexpected value for VttabletCall(Execute.source_keyspace.0.replica) inside %s", resultCountStr))
// Verify primary reads done by self._check_client_conn_redirection().
resultVtgateAPI := resultMap["VtgateApi"]
resultVtgateAPIMap := resultVtgateAPI.(map[string]interface{})
resultVtgateAPIMap := resultVtgateAPI.(map[string]any)
resultAPIHistograms := resultVtgateAPIMap["Histograms"]
resultAPIHistogramsMap := resultAPIHistograms.(map[string]interface{})
resultAPIHistogramsMap := resultAPIHistograms.(map[string]any)
resultTabletDestination := resultAPIHistogramsMap["Execute.destination_keyspace.primary"]
resultTabletDestinationMap := resultTabletDestination.(map[string]interface{})
resultTabletDestinationMap := resultTabletDestination.(map[string]any)
resultCountStrDestination := fmt.Sprintf("%v", reflect.ValueOf(resultTabletDestinationMap["Count"]))
assert.Equal(t, "6", resultCountStrDestination, fmt.Sprintf("unexpected value for VtgateApi(Execute.destination_keyspace.primary) inside %s)", resultCountStrDestination))

Просмотреть файл

@ -74,7 +74,7 @@ func verifyVtgateVariables(t *testing.T, url string) {
require.NoError(t, err)
require.Equal(t, 200, resp.StatusCode, "Vtgate api url response not found")
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err = json.Unmarshal(respByte, &resultMap)
require.NoError(t, err)
@ -216,8 +216,8 @@ func TestReplicaTransactions(t *testing.T) {
assert.Equal(t, `[[INT64(1) VARCHAR("email1")] [INT64(2) VARCHAR("email2")]]`, fmt.Sprintf("%v", qr4.Rows), "we are not able to reconnect after restart")
}
func getMapFromJSON(JSON map[string]interface{}, key string) map[string]interface{} {
result := make(map[string]interface{})
func getMapFromJSON(JSON map[string]any, key string) map[string]any {
result := make(map[string]any)
object := reflect.ValueOf(JSON[key])
if object.Kind() == reflect.Map {
for _, key := range object.MapKeys() {
@ -228,7 +228,7 @@ func getMapFromJSON(JSON map[string]interface{}, key string) map[string]interfac
return result
}
func isPrimaryTabletPresent(tablets map[string]interface{}) bool {
func isPrimaryTabletPresent(tablets map[string]any) bool {
for key := range tablets {
if strings.Contains(key, "primary") {
return true

Просмотреть файл

@ -124,11 +124,11 @@ func TestTabletCommands(t *testing.T) {
}
func assertExcludeFields(t *testing.T, qr string) {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err := json.Unmarshal([]byte(qr), &resultMap)
require.Nil(t, err)
rows := resultMap["rows"].([]interface{})
rows := resultMap["rows"].([]any)
assert.Equal(t, 2, len(rows))
fields := resultMap["fields"]
@ -136,7 +136,7 @@ func assertExcludeFields(t *testing.T, qr string) {
}
func assertExecuteFetch(t *testing.T, qr string) {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err := json.Unmarshal([]byte(qr), &resultMap)
require.Nil(t, err)
@ -196,7 +196,7 @@ func runHookAndAssert(t *testing.T, params []string, expectedStatus string, expe
} else {
require.Nil(t, err)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err = json.Unmarshal([]byte(hr), &resultMap)
require.Nil(t, err)
@ -247,7 +247,7 @@ func TestGetSchema(t *testing.T) {
}
func assertNodeCount(t *testing.T, result string, want int) {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err := json.Unmarshal([]byte(result), &resultMap)
require.Nil(t, err)

Просмотреть файл

@ -81,11 +81,11 @@ func TestTopoCustomRule(t *testing.T) {
// Verify that query is working
result, err := vtctlExec("select id, value from t1", rTablet.Alias)
require.NoError(t, err)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err = json.Unmarshal([]byte(result), &resultMap)
require.NoError(t, err)
rowsAffected := resultMap["rows"].([]interface{})
rowsAffected := resultMap["rows"].([]any)
assert.EqualValues(t, 2, len(rowsAffected))
// Now update the topocustomrule file.

Просмотреть файл

@ -112,7 +112,7 @@ func TestTopoRestart(t *testing.T) {
defer execute(t, conn, `delete from t1`)
ch := make(chan interface{})
ch := make(chan any)
go func() {
clusterInstance.TopoProcess.TearDown(clusterInstance.Cell, clusterInstance.OriginalVTDATAROOT, clusterInstance.CurrentVTDATAROOT, true, *clusterInstance.TopoFlavorString())

Просмотреть файл

@ -125,13 +125,13 @@ func TestStandalone(t *testing.T) {
resp, err := http.Get(fmt.Sprintf("http://%s/debug/vars", vtctldAddr))
require.Nil(t, err)
require.Equal(t, 200, resp.StatusCode)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err = json.Unmarshal(respByte, &resultMap)
require.Nil(t, err)
cmd := resultMap["cmdline"]
require.NotNil(t, cmd, "cmdline is not available in debug vars")
tmp, _ := cmd.([]interface{})
tmp, _ := cmd.([]any)
require.Contains(t, tmp[0], "vtcombo")
ctx := context.Background()

Просмотреть файл

@ -298,7 +298,7 @@ func testBufferBase(t *testing.T, isExternalParent bool) {
durationMs := 0
bufferingStops := 0
if resp.StatusCode == 200 {
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
respByte, _ := io.ReadAll(resp.Body)
err := json.Unmarshal(respByte, &resultMap)
if err != nil {
@ -330,7 +330,7 @@ func testBufferBase(t *testing.T, isExternalParent bool) {
clusterInstance.Teardown()
}
func getVarFromVtgate(t *testing.T, label string, param string, resultMap map[string]interface{}) int {
func getVarFromVtgate(t *testing.T, label string, param string, resultMap map[string]any) int {
paramVal := 0
var err error
object := reflect.ValueOf(resultMap[param])

Просмотреть файл

@ -59,8 +59,8 @@ func TestNormalizeAllFields(t *testing.T) {
assert.True(t, found, "correctly normalized record not found in planner cache")
}
func getPlanCache(vtgateHostPort string) ([]map[string]interface{}, error) {
var results []map[string]interface{}
func getPlanCache(vtgateHostPort string) ([]map[string]any, error) {
var results []map[string]any
client := http.Client{
Timeout: 10 * time.Second,
}

Просмотреть файл

@ -266,7 +266,7 @@ func testCopySchemaShardWithDifferentDB(t *testing.T, shard int) {
schema, err := clusterInstance.VtctlclientProcess.ExecuteCommandWithOutput("GetSchema", tabletAlias)
require.Nil(t, err)
resultMap := make(map[string]interface{})
resultMap := make(map[string]any)
err = json.Unmarshal([]byte(schema), &resultMap)
require.Nil(t, err)
dbSchema := reflect.ValueOf(resultMap["database_schema"])

Просмотреть файл

@ -135,7 +135,7 @@ func TestVSchemaTrackerKeyspaceReInit(t *testing.T) {
primaryTablet := clusterInstance.Keyspaces[0].Shards[0].PrimaryTablet()
// get the vschema prior to the restarts
var originalResults interface{}
var originalResults any
readVSchema(t, &clusterInstance.VtgateProcess, &originalResults)
assert.NotNil(t, originalResults)
@ -148,14 +148,14 @@ func TestVSchemaTrackerKeyspaceReInit(t *testing.T) {
err = clusterInstance.WaitForTabletsToHealthyInVtgate()
require.NoError(t, err)
time.Sleep(time.Duration(signalInterval*2) * time.Second)
var newResults interface{}
var newResults any
readVSchema(t, &clusterInstance.VtgateProcess, &newResults)
assert.Equal(t, originalResults, newResults)
newResults = nil
}
}
func readVSchema(t *testing.T, vtgate *cluster.VtgateProcess, results *interface{}) {
func readVSchema(t *testing.T, vtgate *cluster.VtgateProcess, results *any) {
httpClient := &http.Client{Timeout: 5 * time.Second}
resp, err := httpClient.Get(vtgate.VSchemaURL)
require.Nil(t, err)

Просмотреть файл

@ -373,7 +373,7 @@ func runSplitDiff(t *testing.T, keyspaceShard string) {
func pollForVars(t *testing.T, mssg string) {
startTime := time.Now()
var resultMap map[string]interface{}
var resultMap map[string]any
var err error
var workerState string
for {
@ -390,7 +390,7 @@ func pollForVars(t *testing.T, mssg string) {
func pollForVarsWorkerRetryCount(t *testing.T, count int) {
startTime := time.Now()
var resultMap map[string]interface{}
var resultMap map[string]any
var err error
var workerRetryCountInt int
for {

Просмотреть файл

@ -73,7 +73,7 @@ func (r result) assert() bool {
}
// print renders the results held by result.
func (r result) print(log func(format string, args ...interface{}), seconds float64) {
func (r result) print(log func(format string, args ...any), seconds float64) {
allQCs := sumQueryCounts(r.selects, r.inserts, r.deletes)
log(`QPS:
select: %d | failed: %d (including %d meaningful failures) | sum: %d

Просмотреть файл

@ -48,7 +48,7 @@ import (
// In Test*() function:
//
// mustMatch(t, want, got, "something doesn't match")
func MustMatchFn(ignoredFields ...string) func(t *testing.T, want, got interface{}, errMsg ...string) {
func MustMatchFn(ignoredFields ...string) func(t *testing.T, want, got any, errMsg ...string) {
diffOpts := []cmp.Option{
cmp.Comparer(func(a, b proto.Message) bool {
return proto.Equal(a, b)
@ -59,7 +59,7 @@ func MustMatchFn(ignoredFields ...string) func(t *testing.T, want, got interface
cmpIgnoreFields(ignoredFields...),
}
// Diffs want/got and fails with errMsg on any failure.
return func(t *testing.T, want, got interface{}, errMsg ...string) {
return func(t *testing.T, want, got any, errMsg ...string) {
t.Helper()
diff := cmp.Diff(want, got, diffOpts...)
if diff != "" {

Просмотреть файл

@ -23,7 +23,7 @@ import (
// ExecuteTemplate executes the given text template with the given data, and
// returns the resulting string.
func ExecuteTemplate(tmpl *template.Template, data interface{}) (string, error) {
func ExecuteTemplate(tmpl *template.Template, data any) (string, error) {
buf := &strings.Builder{}
if err := tmpl.Execute(buf, data); err != nil {
return "", err

Просмотреть файл

@ -157,7 +157,7 @@ func (r *SubImpl) String() string {
func (r *SubImpl) iface() {}
type InterfaceContainer struct {
v interface{}
v any
}
func (r InterfaceContainer) String() string {

Просмотреть файл

@ -41,8 +41,8 @@ func (noopTracingServer) AddGrpcClientOptions(addInterceptors func(s grpc.Stream
// NoopSpan implements Span with no-op methods.
type NoopSpan struct{}
func (NoopSpan) Finish() {}
func (NoopSpan) Annotate(string, interface{}) {}
func (NoopSpan) Finish() {}
func (NoopSpan) Annotate(string, any) {}
func init() {
tracingBackendFactories["noop"] = func(_ string) (tracingService, io.Closer, error) {

Просмотреть файл

@ -29,4 +29,4 @@ func (*traceLogger) Log(msg string) { log.Errorf(msg) }
func (*traceLogger) Error(msg string) { log.Errorf(msg) }
// Infof is part of the jaeger.Logger interface.
func (*traceLogger) Infof(msg string, args ...interface{}) { log.Infof(msg, args...) }
func (*traceLogger) Infof(msg string, args ...any) { log.Infof(msg, args...) }

Просмотреть файл

@ -41,7 +41,7 @@ func (js openTracingSpan) Finish() {
}
// Annotate will add information to an existing span
func (js openTracingSpan) Annotate(key string, value interface{}) {
func (js openTracingSpan) Annotate(key string, value any) {
js.otSpan.SetTag(key, value)
}

Просмотреть файл

@ -40,7 +40,7 @@ type Span interface {
Finish()
// Annotate records a key/value pair associated with a Span. It should be
// called between Start and Finish.
Annotate(key string, value interface{})
Annotate(key string, value any)
}
// NewSpan creates a new Span with the currently installed tracing plugin.

Просмотреть файл

@ -115,6 +115,6 @@ func (m *mockSpan) Finish() {
m.tracer.log = append(m.tracer.log, "span finished")
}
func (m *mockSpan) Annotate(key string, value interface{}) {
func (m *mockSpan) Annotate(key string, value any) {
m.tracer.log = append(m.tracer.log, fmt.Sprintf("key: %v values:%v", key, value))
}

Просмотреть файл

@ -775,6 +775,6 @@ type StatsHistoryRecord struct {
}
// IsDuplicate implements history.Deduplicable
func (r *StatsHistoryRecord) IsDuplicate(other interface{}) bool {
func (r *StatsHistoryRecord) IsDuplicate(other any) bool {
return false
}

Просмотреть файл

@ -44,7 +44,7 @@ type StatusUpdater struct {
// Update sets a new status and initializes the EventID if necessary.
// This implements event.Updater.Update().
func (su *StatusUpdater) Update(status interface{}) {
func (su *StatusUpdater) Update(status any) {
su.Status = status.(string)
// initialize event ID

Просмотреть файл

@ -34,48 +34,48 @@ func init() {
type glogger struct{}
func (g *glogger) Info(args ...interface{}) {
func (g *glogger) Info(args ...any) {
}
func (g *glogger) Infoln(args ...interface{}) {
func (g *glogger) Infoln(args ...any) {
}
func (g *glogger) Infof(format string, args ...interface{}) {
func (g *glogger) Infof(format string, args ...any) {
}
func (g *glogger) Warning(args ...interface{}) {
func (g *glogger) Warning(args ...any) {
log.WarningDepth(2, args...)
}
func (g *glogger) Warningln(args ...interface{}) {
func (g *glogger) Warningln(args ...any) {
log.WarningDepth(2, fmt.Sprintln(args...))
}
func (g *glogger) Warningf(format string, args ...interface{}) {
func (g *glogger) Warningf(format string, args ...any) {
log.WarningDepth(2, fmt.Sprintf(format, args...))
}
func (g *glogger) Error(args ...interface{}) {
func (g *glogger) Error(args ...any) {
log.ErrorDepth(2, args...)
}
func (g *glogger) Errorln(args ...interface{}) {
func (g *glogger) Errorln(args ...any) {
log.ErrorDepth(2, fmt.Sprintln(args...))
}
func (g *glogger) Errorf(format string, args ...interface{}) {
func (g *glogger) Errorf(format string, args ...any) {
log.ErrorDepth(2, fmt.Sprintf(format, args...))
}
func (g *glogger) Fatal(args ...interface{}) {
func (g *glogger) Fatal(args ...any) {
log.FatalDepth(2, args...)
}
func (g *glogger) Fatalln(args ...interface{}) {
func (g *glogger) Fatalln(args ...any) {
log.FatalDepth(2, fmt.Sprintln(args...))
}
func (g *glogger) Fatalf(format string, args ...interface{}) {
func (g *glogger) Fatalf(format string, args ...any) {
log.FatalDepth(2, fmt.Sprintf(format, args...))
}

Просмотреть файл

@ -36,22 +36,22 @@ func NewConsoleLogger() *ConsoleLogger {
}
// Infof is part of the Logger interface
func (cl *ConsoleLogger) Infof(format string, v ...interface{}) {
func (cl *ConsoleLogger) Infof(format string, v ...any) {
cl.InfoDepth(1, fmt.Sprintf(format, v...))
}
// Warningf is part of the Logger interface
func (cl *ConsoleLogger) Warningf(format string, v ...interface{}) {
func (cl *ConsoleLogger) Warningf(format string, v ...any) {
cl.WarningDepth(1, fmt.Sprintf(format, v...))
}
// Errorf is part of the Logger interface
func (cl *ConsoleLogger) Errorf(format string, v ...interface{}) {
func (cl *ConsoleLogger) Errorf(format string, v ...any) {
cl.ErrorDepth(1, fmt.Sprintf(format, v...))
}
// Errorf2 is part of the Logger interface
func (cl *ConsoleLogger) Errorf2(err error, format string, v ...interface{}) {
func (cl *ConsoleLogger) Errorf2(err error, format string, v ...any) {
cl.ErrorDepth(1, fmt.Sprintf(format+": %+v", append(v, err)))
}
@ -61,7 +61,7 @@ func (cl *ConsoleLogger) Error(err error) {
}
// Printf is part of the Logger interface
func (cl *ConsoleLogger) Printf(format string, v ...interface{}) {
func (cl *ConsoleLogger) Printf(format string, v ...any) {
fmt.Printf(format, v...)
}

Некоторые файлы не были показаны из-за слишком большого количества измененных файлов Показать больше