From 20473b4f0f182751c55ad44e794c976be7ba3ce6 Mon Sep 17 00:00:00 2001 From: Miguel Molina Date: Wed, 9 Jan 2019 16:26:58 +0100 Subject: [PATCH] fix errors pointed out by staticcheck Signed-off-by: Miguel Molina --- auth/common_test.go | 2 +- engine_test.go | 2 - mem/table.go | 3 +- mem/table_test.go | 3 +- sql/analyzer/aggregations.go | 2 +- sql/analyzer/assign_catalog.go | 2 +- sql/analyzer/assign_indexes.go | 5 -- sql/analyzer/optimization_rules.go | 4 +- sql/analyzer/resolve_columns.go | 11 +---- sql/analyzer/resolve_columns_test.go | 2 +- sql/analyzer/resolve_database.go | 2 +- sql/analyzer/resolve_functions.go | 2 +- sql/analyzer/resolve_natural_joins.go | 2 +- sql/analyzer/resolve_orderby.go | 2 +- sql/analyzer/resolve_stars.go | 2 +- sql/analyzer/resolve_tables.go | 2 +- sql/analyzer/validation_rules.go | 12 ++--- .../function/ceil_round_floor_test.go | 2 +- sql/index.go | 13 ----- sql/index/pilosa/driver.go | 6 +-- sql/index/pilosa/driver_test.go | 47 ++++++++----------- sql/index/pilosa/index.go | 5 -- sql/index/pilosa/lookup.go | 2 +- sql/plan/create_index.go | 1 - sql/plan/limit.go | 21 ++++----- sql/plan/set.go | 10 ++-- sql/plan/show_create_table.go | 11 +---- sql/plan/showcolumns.go | 2 +- sql/type.go | 4 +- 29 files changed, 64 insertions(+), 120 deletions(-) diff --git a/auth/common_test.go b/auth/common_test.go index daa9d50a6..07b8e3462 100644 --- a/auth/common_test.go +++ b/auth/common_test.go @@ -195,7 +195,7 @@ func testAudit( defer os.RemoveAll(tmpDir) for _, c := range tests { - t.Run(fmt.Sprintf("%s", c.user), func(t *testing.T) { + t.Run(c.user, func(t *testing.T) { req := require.New(t) db, err := dsql.Open("mysql", connString(c.user, "")) diff --git a/engine_test.go b/engine_test.go index 5adb5fd9d..9fc0c0293 100644 --- a/engine_test.go +++ b/engine_test.go @@ -23,8 +23,6 @@ import ( "github.com/stretchr/testify/require" ) -const driverName = "engine_tests" - var queries = []struct { query string expected []sql.Row diff --git a/mem/table.go b/mem/table.go index a77ff1b1e..bb9217732 100644 --- a/mem/table.go +++ b/mem/table.go @@ -89,8 +89,7 @@ func (t *Table) PartitionCount(ctx *sql.Context) (int64, error) { // PartitionRows implements the sql.PartitionRows interface. func (t *Table) PartitionRows(ctx *sql.Context, partition sql.Partition) (sql.RowIter, error) { - key := string(partition.Key()) - rows, ok := t.partitions[key] + rows, ok := t.partitions[string(partition.Key())] if !ok { return nil, fmt.Errorf( "partition not found: %q", partition.Key(), diff --git a/mem/table_test.go b/mem/table_test.go index 412dafd1a..98ae27ee8 100644 --- a/mem/table_test.go +++ b/mem/table_test.go @@ -203,8 +203,7 @@ func TestTable(t *testing.T) { rows, err := sql.RowIterToRows(iter) require.NoError(err) - key := string(p.Key()) - expected := table.partitions[key] + expected := table.partitions[string(p.Key())] require.Len(rows, len(expected)) for i, row := range rows { diff --git a/sql/analyzer/aggregations.go b/sql/analyzer/aggregations.go index 67363ca23..0f67e9442 100644 --- a/sql/analyzer/aggregations.go +++ b/sql/analyzer/aggregations.go @@ -7,7 +7,7 @@ import ( ) func reorderAggregations(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("reorder_aggregations") + span, _ := ctx.Span("reorder_aggregations") defer span.Finish() if !n.Resolved() { diff --git a/sql/analyzer/assign_catalog.go b/sql/analyzer/assign_catalog.go index 457213da3..8d07247a7 100644 --- a/sql/analyzer/assign_catalog.go +++ b/sql/analyzer/assign_catalog.go @@ -7,7 +7,7 @@ import ( // assignCatalog sets the catalog in the required nodes. func assignCatalog(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("assign_catalog") + span, _ := ctx.Span("assign_catalog") defer span.Finish() return n.TransformUp(func(n sql.Node) (sql.Node, error) { diff --git a/sql/analyzer/assign_indexes.go b/sql/analyzer/assign_indexes.go index b8fb608f8..a0431c79f 100644 --- a/sql/analyzer/assign_indexes.go +++ b/sql/analyzer/assign_indexes.go @@ -707,11 +707,6 @@ func containsColumns(e sql.Expression) bool { return result } -func isColumn(e sql.Expression) bool { - _, ok := e.(*expression.GetField) - return ok -} - func isEvaluable(e sql.Expression) bool { return !containsColumns(e) } diff --git a/sql/analyzer/optimization_rules.go b/sql/analyzer/optimization_rules.go index 3ba9a0e27..f8795348b 100644 --- a/sql/analyzer/optimization_rules.go +++ b/sql/analyzer/optimization_rules.go @@ -8,7 +8,7 @@ import ( ) func eraseProjection(ctx *sql.Context, a *Analyzer, node sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("erase_projection") + span, _ := ctx.Span("erase_projection") defer span.Finish() if !node.Resolved() { @@ -29,7 +29,7 @@ func eraseProjection(ctx *sql.Context, a *Analyzer, node sql.Node) (sql.Node, er } func optimizeDistinct(ctx *sql.Context, a *Analyzer, node sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("optimize_distinct") + span, _ := ctx.Span("optimize_distinct") defer span.Finish() a.Log("optimize distinct, node of type: %T", node) diff --git a/sql/analyzer/resolve_columns.go b/sql/analyzer/resolve_columns.go index 2680bc439..ce2ae02a0 100644 --- a/sql/analyzer/resolve_columns.go +++ b/sql/analyzer/resolve_columns.go @@ -36,7 +36,7 @@ type column interface { } func qualifyColumns(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("qualify_columns") + span, _ := ctx.Span("qualify_columns") defer span.Finish() a.Log("qualify columns") @@ -173,9 +173,6 @@ func qualifyColumns(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) case column: table = p.Table() col = p.Name() - case *expression.GetField: - table = p.Table() - col = p.Name() default: continue } @@ -277,11 +274,7 @@ func resolveColumns(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) } name := strings.TrimLeft(uc.Name(), "@") - if strings.HasPrefix(name, sessionPrefix) { - name = name[len(sessionPrefix):] - } else if strings.HasPrefix(name, globalPrefix) { - name = name[len(globalPrefix):] - } + name = strings.TrimPrefix(strings.TrimPrefix(name, globalPrefix), sessionPrefix) typ, value := ctx.Get(name) return expression.NewGetSessionField(name, typ, value), nil } diff --git a/sql/analyzer/resolve_columns_test.go b/sql/analyzer/resolve_columns_test.go index a7ee405f5..95b6ea313 100644 --- a/sql/analyzer/resolve_columns_test.go +++ b/sql/analyzer/resolve_columns_test.go @@ -196,7 +196,7 @@ func TestQualifyColumns(t *testing.T) { plan.NewTableAlias("a", plan.NewResolvedTable(table)), ) - result, err = f.Apply(sql.NewEmptyContext(), nil, node) + _, err = f.Apply(sql.NewEmptyContext(), nil, node) require.Error(err) require.True(sql.ErrTableNotFound.Is(err)) diff --git a/sql/analyzer/resolve_database.go b/sql/analyzer/resolve_database.go index 3ec98aadc..2ee2917a5 100644 --- a/sql/analyzer/resolve_database.go +++ b/sql/analyzer/resolve_database.go @@ -6,7 +6,7 @@ import ( ) func resolveDatabase(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("resolve_database") + span, _ := ctx.Span("resolve_database") defer span.Finish() a.Log("resolve database, node of type: %T", n) diff --git a/sql/analyzer/resolve_functions.go b/sql/analyzer/resolve_functions.go index 6ac3297e2..ec034a76d 100644 --- a/sql/analyzer/resolve_functions.go +++ b/sql/analyzer/resolve_functions.go @@ -6,7 +6,7 @@ import ( ) func resolveFunctions(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("resolve_functions") + span, _ := ctx.Span("resolve_functions") defer span.Finish() a.Log("resolve functions, node of type %T", n) diff --git a/sql/analyzer/resolve_natural_joins.go b/sql/analyzer/resolve_natural_joins.go index aed53b6b2..2de60b6e9 100644 --- a/sql/analyzer/resolve_natural_joins.go +++ b/sql/analyzer/resolve_natural_joins.go @@ -19,7 +19,7 @@ type transformedSource struct { } func resolveNaturalJoins(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("resolve_natural_joins") + span, _ := ctx.Span("resolve_natural_joins") defer span.Finish() if n.Resolved() { diff --git a/sql/analyzer/resolve_orderby.go b/sql/analyzer/resolve_orderby.go index 2969f329a..a678c3594 100644 --- a/sql/analyzer/resolve_orderby.go +++ b/sql/analyzer/resolve_orderby.go @@ -10,7 +10,7 @@ import ( ) func resolveOrderBy(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("resolve_orderby") + span, _ := ctx.Span("resolve_orderby") defer span.Finish() a.Log("resolving order bys, node of type: %T", n) diff --git a/sql/analyzer/resolve_stars.go b/sql/analyzer/resolve_stars.go index b12a55c3f..c33432945 100644 --- a/sql/analyzer/resolve_stars.go +++ b/sql/analyzer/resolve_stars.go @@ -7,7 +7,7 @@ import ( ) func resolveStar(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("resolve_star") + span, _ := ctx.Span("resolve_star") defer span.Finish() a.Log("resolving star, node of type: %T", n) diff --git a/sql/analyzer/resolve_tables.go b/sql/analyzer/resolve_tables.go index 6f8682eb8..d9b46190c 100644 --- a/sql/analyzer/resolve_tables.go +++ b/sql/analyzer/resolve_tables.go @@ -17,7 +17,7 @@ var dualTable = func() sql.Table { }() func resolveTables(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("resolve_tables") + span, _ := ctx.Span("resolve_tables") defer span.Finish() a.Log("resolve table, node of type: %T", n) diff --git a/sql/analyzer/validation_rules.go b/sql/analyzer/validation_rules.go index 810b57de1..b03c5a7c3 100644 --- a/sql/analyzer/validation_rules.go +++ b/sql/analyzer/validation_rules.go @@ -49,7 +49,7 @@ var DefaultValidationRules = []Rule{ } func validateIsResolved(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("validate_is_resolved") + span, _ := ctx.Span("validate_is_resolved") defer span.Finish() if !n.Resolved() { @@ -60,7 +60,7 @@ func validateIsResolved(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, er } func validateOrderBy(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("validate_order_by") + span, _ := ctx.Span("validate_order_by") defer span.Finish() switch n := n.(type) { @@ -77,7 +77,7 @@ func validateOrderBy(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error } func validateGroupBy(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("validate_group_by") + span, _ := ctx.Span("validate_group_by") defer span.Finish() switch n := n.(type) { @@ -122,7 +122,7 @@ func isValidAgg(validAggs []string, expr sql.Expression) bool { } func validateSchemaSource(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("validate_schema_source") + span, _ := ctx.Span("validate_schema_source") defer span.Finish() switch n := n.(type) { @@ -138,7 +138,7 @@ func validateSchemaSource(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, } func validateIndexCreation(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("validate_index_creation") + span, _ := ctx.Span("validate_index_creation") defer span.Finish() ci, ok := n.(*plan.CreateIndex) @@ -179,7 +179,7 @@ func validateSchema(t *plan.ResolvedTable) error { } func validateProjectTuples(ctx *sql.Context, a *Analyzer, n sql.Node) (sql.Node, error) { - span, ctx := ctx.Span("validate_project_tuples") + span, _ := ctx.Span("validate_project_tuples") defer span.Finish() switch n := n.(type) { diff --git a/sql/expression/function/ceil_round_floor_test.go b/sql/expression/function/ceil_round_floor_test.go index e4dcf570f..d221b5957 100644 --- a/sql/expression/function/ceil_round_floor_test.go +++ b/sql/expression/function/ceil_round_floor_test.go @@ -219,6 +219,6 @@ func TestRound(t *testing.T) { req.NotNil(exprs[0]) result, err := f.Eval(sql.NewEmptyContext(), sql.NewRow([]byte{1, 2, 3}, 2)) - + req.NoError(err) req.Equal(int32(0), result) } diff --git a/sql/index.go b/sql/index.go index 3965b0b5b..413836cd1 100644 --- a/sql/index.go +++ b/sql/index.go @@ -374,19 +374,6 @@ Indexes: return results } -type withIndexer interface { - WithIndex(int) Expression -} - -func removeIndexes(e Expression) (Expression, error) { - i, ok := e.(withIndexer) - if !ok { - return e, nil - } - - return i.WithIndex(-1), nil -} - var ( // ErrIndexIDAlreadyRegistered is the error returned when there is already // an index with the same ID. diff --git a/sql/index/pilosa/driver.go b/sql/index/pilosa/driver.go index 6303c073b..4b05e424a 100644 --- a/sql/index/pilosa/driver.go +++ b/sql/index/pilosa/driver.go @@ -45,10 +45,8 @@ const ( ) var ( - errCorruptedIndex = errors.NewKind("the index db: %s, table: %s, id: %s is corrupted") - errLoadingIndex = errors.NewKind("cannot load pilosa index: %s") - errInvalidIndexType = errors.NewKind("expecting a pilosa index, instead got %T") - errDeletePilosaField = errors.NewKind("error deleting pilosa field %s: %s") + errCorruptedIndex = errors.NewKind("the index db: %s, table: %s, id: %s is corrupted") + errInvalidIndexType = errors.NewKind("expecting a pilosa index, instead got %T") ) type ( diff --git a/sql/index/pilosa/driver_test.go b/sql/index/pilosa/driver_test.go index 86954d01b..8c06d680c 100644 --- a/sql/index/pilosa/driver_test.go +++ b/sql/index/pilosa/driver_test.go @@ -95,7 +95,7 @@ func TestLoadAll(t *testing.T) { } require.NoError(d.Save(sql.NewEmptyContext(), idx3, it3)) - indexes, err = d.LoadAll("db", "table2") + _, err = d.LoadAll("db", "table2") require.NoError(err) } @@ -155,15 +155,10 @@ func TestLoadAllWithMultipleDrivers(t *testing.T) { } require.NoError(d3.Save(sql.NewEmptyContext(), idx3, it3)) - indexes, err = d.LoadAll("db", "table2") + _, err = d.LoadAll("db", "table2") require.NoError(err) } -type logLoc struct { - loc []byte - err error -} - func TestSaveAndLoad(t *testing.T) { require := require.New(t) setup(t) @@ -571,7 +566,7 @@ func TestIntersection(t *testing.T) { require.True(ok) interIt, err := interLookup.Intersection(lookupPath).Values(testPartition(0)) require.NoError(err) - loc, err := interIt.Next() + _, err = interIt.Next() require.True(err == io.EOF) require.NoError(interIt.Close()) @@ -585,7 +580,7 @@ func TestIntersection(t *testing.T) { require.True(ok) interIt, err = interLookup.Intersection(lookupLang).Values(testPartition(0)) require.NoError(err) - loc, err = interIt.Next() + loc, err := interIt.Next() require.NoError(err) require.Equal(loc, itPath.records[0][0].location) _, err = interIt.Next() @@ -647,7 +642,7 @@ func TestIntersectionWithMultipleDrivers(t *testing.T) { require.True(ok) interIt, err := interLookup.Intersection(lookupPath).Values(testPartition(0)) require.NoError(err) - loc, err := interIt.Next() + _, err = interIt.Next() require.True(err == io.EOF) require.NoError(interIt.Close()) @@ -661,7 +656,7 @@ func TestIntersectionWithMultipleDrivers(t *testing.T) { require.True(ok) interIt, err = interLookup.Intersection(lookupLang).Values(testPartition(0)) require.NoError(err) - loc, err = interIt.Next() + loc, err := interIt.Next() require.NoError(err) require.Equal(loc, itPath.records[0][0].location) _, err = interIt.Next() @@ -741,6 +736,7 @@ func TestUnion(t *testing.T) { require.True(m.IsMergeable(lookupPath)) unionLookup, ok := lookupLang.(sql.SetOperations) + require.True(ok) lookupNonExisting, err := sqlIdxPath.Get(itPath.total) require.NoError(err) @@ -752,10 +748,12 @@ func TestUnion(t *testing.T) { require.NoError(err) // 0 loc, err = unionIt.Next() + require.NoError(err) require.Equal(itLang.records[0][0].location, loc) // total-1 loc, err = unionIt.Next() + require.NoError(err) require.Equal(itPath.records[0][itPath.total-1].location, loc) _, err = unionIt.Next() @@ -1212,7 +1210,7 @@ func TestPilosaHolder(t *testing.T) { f1 = idx2.Field("f1") - r2, err = f1.Row(2) + _, err = f1.Row(2) require.NoError(err) f2 = idx2.Field("f2") @@ -1265,6 +1263,11 @@ func offsetLocation(partition sql.Partition, offset int) string { return string(partition.Key()) + "-" + fmt.Sprint(offset) } +type testRecord struct { + values []interface{} + location []byte +} + // test implementation of sql.IndexKeyValueIter interface type testIndexKeyValueIter struct { offset int @@ -1273,10 +1276,7 @@ type testIndexKeyValueIter struct { location func(sql.Partition, int) string partition sql.Partition - records *[]struct { - values []interface{} - location []byte - } + records *[]testRecord } func (it *testIndexKeyValueIter) Next() ([]interface{}, []byte, error) { @@ -1291,10 +1291,7 @@ func (it *testIndexKeyValueIter) Next() ([]interface{}, []byte, error) { values[i] = e + "-" + loc + "-" + string(it.partition.Key()) } - *it.records = append(*it.records, struct { - values []interface{} - location []byte - }{ + *it.records = append(*it.records, testRecord{ values, []byte(loc), }) @@ -1430,10 +1427,7 @@ type partitionKeyValueIter struct { location func(sql.Partition, int) string pos int - records [][]struct { - values []interface{} - location []byte - } + records [][]testRecord } func (i *partitionKeyValueIter) Next() (sql.Partition, sql.IndexKeyValueIter, error) { @@ -1442,10 +1436,7 @@ func (i *partitionKeyValueIter) Next() (sql.Partition, sql.IndexKeyValueIter, er } i.pos++ - i.records = append(i.records, []struct { - values []interface{} - location []byte - }{}) + i.records = append(i.records, []testRecord{}) return testPartition(i.pos - 1), &testIndexKeyValueIter{ offset: i.offset, total: i.total, diff --git a/sql/index/pilosa/index.go b/sql/index/pilosa/index.go index 00fd4db53..1532e63a0 100644 --- a/sql/index/pilosa/index.go +++ b/sql/index/pilosa/index.go @@ -104,11 +104,6 @@ func (idx *pilosaIndex) Has(p sql.Partition, key ...interface{}) (bool, error) { } defer idx.mapping.close() - n := len(key) - if n > len(idx.expressions) { - n = len(idx.expressions) - } - for i, expr := range idx.expressions { name := fieldName(idx.ID(), expr, p) diff --git a/sql/index/pilosa/lookup.go b/sql/index/pilosa/lookup.go index 50bfa91f7..f338d9198 100644 --- a/sql/index/pilosa/lookup.go +++ b/sql/index/pilosa/lookup.go @@ -596,7 +596,7 @@ func compare(a, b interface{}) (int, error) { return 0, nil } - if a == false { + if !a { return -1, nil } diff --git a/sql/plan/create_index.go b/sql/plan/create_index.go index 1ecd7e43e..cfd2c635e 100644 --- a/sql/plan/create_index.go +++ b/sql/plan/create_index.go @@ -340,7 +340,6 @@ func getColumnsAndPrepareExpressions( } type evalPartitionKeyValueIter struct { - table sql.IndexableTable iter sql.PartitionIndexKeyValueIter columns []string exprs []sql.Expression diff --git a/sql/plan/limit.go b/sql/plan/limit.go index e8826bdf6..b2831ef99 100644 --- a/sql/plan/limit.go +++ b/sql/plan/limit.go @@ -72,18 +72,17 @@ type limitIter struct { } func (li *limitIter) Next() (sql.Row, error) { - for { - if li.currentPos >= li.l.size { - return nil, io.EOF - } - childRow, err := li.childIter.Next() - li.currentPos++ - if err != nil { - return nil, err - } - - return childRow, nil + if li.currentPos >= li.l.size { + return nil, io.EOF } + + childRow, err := li.childIter.Next() + li.currentPos++ + if err != nil { + return nil, err + } + + return childRow, nil } func (li *limitIter) Close() error { diff --git a/sql/plan/set.go b/sql/plan/set.go index 0c852587a..509c672ee 100644 --- a/sql/plan/set.go +++ b/sql/plan/set.go @@ -93,12 +93,10 @@ func (s *Set) RowIter(ctx *sql.Context) (sql.RowIter, error) { err error ) - name := strings.TrimLeft(v.Name, "@") - if strings.HasPrefix(name, sessionPrefix) { - name = name[len(sessionPrefix):] - } else if strings.HasPrefix(name, globalPrefix) { - name = name[len(globalPrefix):] - } + name := strings.TrimPrefix( + strings.TrimPrefix(strings.TrimLeft(v.Name, "@"), sessionPrefix), + globalPrefix, + ) if _, ok := v.Value.(*expression.DefaultColumn); ok { valtyp, ok := sql.DefaultSessionConfig()[name] diff --git a/sql/plan/show_create_table.go b/sql/plan/show_create_table.go index a8a461e21..2be2979bc 100644 --- a/sql/plan/show_create_table.go +++ b/sql/plan/show_create_table.go @@ -55,16 +55,9 @@ func (n *ShowCreateTable) String() string { return fmt.Sprintf("SHOW CREATE TABLE %s", n.Table) } -type createTableStmt struct { - colName string - colType sql.Type -} - type showCreateTablesIter struct { db sql.Database table string - - createStmt *createTableStmt didIteration bool } @@ -91,7 +84,7 @@ func (i *showCreateTablesIter) Next() (sql.Row, error) { func produceCreateStatement(table sql.Table) string { schema := table.Schema() - colCreateStatements := make([]string, len(schema), len(schema)) + colCreateStatements := make([]string, len(schema)) // Statement creation parts for each column for indx, col := range schema { @@ -115,7 +108,7 @@ func produceCreateStatement(table sql.Table) string { colCreateStatements[indx] = createStmtPart } - prettyColCreateStmts := fmt.Sprintf("%s", strings.Join(colCreateStatements, ",\n")) + prettyColCreateStmts := strings.Join(colCreateStatements, ",\n") composedCreateTableStatement := fmt.Sprintf("CREATE TABLE `%s` (%s) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4", table.Name(), prettyColCreateStmts) diff --git a/sql/plan/showcolumns.go b/sql/plan/showcolumns.go index ac5eba4c8..364e52762 100644 --- a/sql/plan/showcolumns.go +++ b/sql/plan/showcolumns.go @@ -54,7 +54,7 @@ func (s *ShowColumns) Schema() sql.Schema { // RowIter creates a new ShowColumns node. func (s *ShowColumns) RowIter(ctx *sql.Context) (sql.RowIter, error) { - span, ctx := ctx.Span("plan.ShowColumns") + span, _ := ctx.Span("plan.ShowColumns") schema := s.Child.Schema() var rows = make([]sql.Row, len(schema)) diff --git a/sql/type.go b/sql/type.go index 0418b206f..714b10b66 100644 --- a/sql/type.go +++ b/sql/type.go @@ -579,11 +579,11 @@ func (t booleanT) Compare(a interface{}, b interface{}) (int, error) { return 0, nil } - if a.(bool) == false { + if a == false { return -1, nil } - return +1, nil + return 1, nil } type blobT struct{} pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy