diff --git a/sql3/planner/opaltertable.go b/sql3/planner/opaltertable.go index 6da8db0e5..2b6495843 100644 --- a/sql3/planner/opaltertable.go +++ b/sql3/planner/opaltertable.go @@ -94,11 +94,11 @@ func (i *alterTableRowIter) Next(ctx context.Context) (types.Row, error) { fos := i.columnDef.fos fld, err := pilosa.FieldFromFieldOptions(fname, fos...) - // all newly created fields unconditionally have TrackExistence turned on. - fld.Options.TrackExistence = true if err != nil { return nil, err } + // all newly created fields unconditionally have TrackExistence turned on. + fld.Options.TrackExistence = true if err := i.planner.schemaAPI.CreateField(ctx, tname, fld); err != nil { return nil, err diff --git a/sql3/planner/opcreatetable.go b/sql3/planner/opcreatetable.go index 25de51bbf..5b143c9b6 100644 --- a/sql3/planner/opcreatetable.go +++ b/sql3/planner/opcreatetable.go @@ -112,11 +112,11 @@ func (i *createTableRowIter) Next(ctx context.Context) (types.Row, error) { for _, f := range i.columns { fld, err := pilosa.FieldFromFieldOptions(dax.FieldName(f.name), f.fos...) - // We unconditionally turn on TrackExistence for all newly-created fields. - fld.Options.TrackExistence = true if err != nil { return nil, errors.Wrapf(err, "creating field from field options: %s", f.name) } + // We unconditionally turn on TrackExistence for all newly-created fields. + fld.Options.TrackExistence = true fields = append(fields, fld) } diff --git a/sql3/test/defs/defs_create_table.go b/sql3/test/defs/defs_create_table.go index 724dd03f2..b80ffe81f 100644 --- a/sql3/test/defs/defs_create_table.go +++ b/sql3/test/defs/defs_create_table.go @@ -31,6 +31,13 @@ var createTable = TableTest{ ), ExpErr: "expected literal, found bad", }, + { + name: "minAboveMax", + SQLs: sqls( + "create table bar (_id id, i1 int min 20 max 19)", + ), + ExpErr: "int field min cannot be greater than max", + }, { name: "commentString", SQLs: sqls(