Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Sentry: error.go:89: unexpected error from the vectorized engine: interface conversion: coldata.Column is coldata.Int32s, not coldata.Int64s (1) assertion failure Wraps: (2) attached stack trace -- ... #122798

Open
cockroach-sentry opened this issue Apr 22, 2024 · 0 comments
Labels
C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. O-sentry Originated from an in-the-wild panic report.

Comments

@cockroach-sentry
Copy link
Collaborator

cockroach-sentry commented Apr 22, 2024

This issue was auto filed by Sentry. It represents a crash or reported error on a live cluster with telemetry enabled.

Sentry Link: https://cockroach-labs.sentry.io/issues/5237653214/?referrer=webhooks_plugin

Panic Message:

error.go:89: unexpected error from the vectorized engine: interface conversion: coldata.Column is coldata.Int32s, not coldata.Int64s
(1) assertion failure
Wraps: (2) attached stack trace
  -- stack trace:
  | github.com/cockroachdb/cockroach/pkg/sql/colexecerror.CatchVectorizedRuntimeError.func1
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexecerror/error.go:89
  | runtime.gopanic
  | 	GOROOT/src/runtime/panic.go:884
  | runtime.panicdottypeE
  | 	GOROOT/src/runtime/iface.go:262
  | runtime.panicdottypeI
  | 	GOROOT/src/runtime/iface.go:272
  | github.com/cockroachdb/cockroach/pkg/col/coldata.(*memColumn).Int64
  | 	github.com/cockroachdb/cockroach/pkg/col/coldata/vec.go:233
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*Int64VecComparator).setVec
  | 	github.com/cockroachdb/cockroach/bazel-out/k8-opt/bin/pkg/sql/colexec/vec_comparators.eg.go:301
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*OrderedSynchronizer).updateComparators
  | 	github.com/cockroachdb/cockroach/bazel-out/k8-opt/bin/pkg/sql/colexec/ordered_synchronizer.eg.go:369
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*OrderedSynchronizer).Next
  | 	github.com/cockroachdb/cockroach/bazel-out/k8-opt/bin/pkg/sql/colexec/ordered_synchronizer.eg.go:120
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*batchInfoCollector).next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/stats.go:118
  | github.com/cockroachdb/cockroach/pkg/sql/colexecerror.CatchVectorizedRuntimeError
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexecerror/error.go:92
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*batchInfoCollector).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/stats.go:126
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*UnorderedDistinct).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/unordered_distinct.go:98
  | github.com/cockroachdb/cockroach/pkg/sql/colexec/colexecdisk.(*diskSpillerBase).Next.func1
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/colexecdisk/disk_spiller.go:202
  | github.com/cockroachdb/cockroach/pkg/sql/colexecerror.CatchVectorizedRuntimeError
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexecerror/error.go:92
  | github.com/cockroachdb/cockroach/pkg/sql/colexec/colexecdisk.(*diskSpillerBase).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/colexecdisk/disk_spiller.go:200
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*limitOp).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/limit.go:47
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*batchInfoCollector).next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/stats.go:118
  | github.com/cockroachdb/cockroach/pkg/sql/colexecerror.CatchVectorizedRuntimeError
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexecerror/error.go:92
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*batchInfoCollector).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/stats.go:126
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*Materializer).next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/materializer.go:247
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*Materializer).nextAdapter
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/materializer.go:272
  | github.com/cockroachdb/cockroach/pkg/sql/colexecerror.CatchVectorizedRuntimeError
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexecerror/error.go:92
  | github.com/cockroachdb/cockroach/pkg/sql/colexec.(*Materializer).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexec/materializer.go:278
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*FlowCoordinator).next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/flow_coordinator.go:128
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*FlowCoordinator).nextAdapter
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/flow_coordinator.go:145
  | github.com/cockroachdb/cockroach/pkg/sql/colexecerror.CatchVectorizedRuntimeError
  | 	github.com/cockroachdb/cockroach/pkg/sql/colexecerror/error.go:92
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*FlowCoordinator).Next
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/flow_coordinator.go:150
  | github.com/cockroachdb/cockroach/pkg/sql/execinfra.Run
  | 	github.com/cockroachdb/cockroach/pkg/sql/execinfra/base.go:193
  | github.com/cockroachdb/cockroach/pkg/sql/execinfra.(*ProcessorBaseNoHelper).Run
  | 	github.com/cockroachdb/cockroach/pkg/sql/execinfra/processorsbase.go:726
  | github.com/cockroachdb/cockroach/pkg/sql/flowinfra.(*FlowBase).Run
  | 	github.com/cockroachdb/cockroach/pkg/sql/flowinfra/flow.go:580
  | github.com/cockroachdb/cockroach/pkg/sql/colflow.(*vectorizedFlow).Run
  | 	github.com/cockroachdb/cockroach/pkg/sql/colflow/vectorized_flow.go:313
  | github.com/cockroachdb/cockroach/pkg/sql.(*DistSQLPlanner).Run
  | 	github.com/cockroachdb/cockroach/pkg/sql/distsql_running.go:902
Wraps: (3) unexpected error from the vectorized engine
Wraps: (4) interface conversion: coldata.Column is coldata.Int32s, not coldata.Int64s
  | -- cause hidden behind barrier
  | interface conversion: coldata.Column is coldata.Int32s, not coldata.Int64s
  | (1) interface conversion: coldata.Column is coldata.Int32s, not coldata.Int64s
  | Error types: (1) *runtime.TypeAssertionError
Error types: (1) *assert.withAssertionFailure (2) *withstack.withStack (3) *errutil.withPrefix (4) *barriers.barrierErr
-- report composition:
*barriers.barrierErr: masked error: interface conversion: coldata.Column is coldata.Int32s, not coldata.Int64s
*errutil.withPrefix: unexpected error from the vectorized engine
error.go:89: *withstack.withStack (top exception)
*assert.withAssertionFailure
Stacktrace (expand for inline code snippets):

noWait := planCtx.getPortalPauseInfo() != nil
flow.Run(ctx, noWait)
}

// as the root, so we run this flow with the default implementation.
f.FlowBase.Run(ctx, noWait)
return

f.headProcStarted = true
headProc.Run(ctx, headOutput)
}

pb.self.Start(ctx)
Run(pb.ctx, pb.self, output)
}

for {
row, meta := src.Next()
// Emit the row; stop if no more rows are needed.

func (f *FlowCoordinator) Next() (rowenc.EncDatumRow, *execinfrapb.ProducerMetadata) {
if err := colexecerror.CatchVectorizedRuntimeError(f.nextAdapter); err != nil {
if f.State == execinfra.StateRunning {

}()
operation()
return retErr

func (f *FlowCoordinator) nextAdapter() {
f.row, f.meta = f.next()
}

if f.State == execinfra.StateRunning {
row, meta := f.input.Next()
if meta != nil {

for m.State == execinfra.StateRunning {
if err := colexecerror.CatchVectorizedRuntimeError(m.nextAdapter); err != nil {
m.MoveToDraining(err)

}()
operation()
return retErr

func (m *Materializer) nextAdapter() {
m.outputRow = m.next()
}

// Get a fresh batch.
m.batch = m.input.Next()
if m.batch.Length() == 0 {

// execution time (e.g. in the statement bundle).
err := colexecerror.CatchVectorizedRuntimeError(bic.next)
bic.stopwatch.Stop()

}()
operation()
return retErr

func (bic *batchInfoCollector) next() {
bic.batch = bic.Input.Next()
}

}
bat := c.Input.Next()
length := bat.Length()

var batch coldata.Batch
if err := colexecerror.CatchVectorizedRuntimeError(
func() {

}()
operation()
return retErr

func() {
batch = d.inMemoryOp.Next()
},

for {
op.lastInputBatch = op.Input.Next()
op.LastInputBatchOrigLen = op.lastInputBatch.Length()

// execution time (e.g. in the statement bundle).
err := colexecerror.CatchVectorizedRuntimeError(bic.next)
bic.stopwatch.Stop()

}()
operation()
return retErr

func (bic *batchInfoCollector) next() {
bic.batch = bic.Input.Next()
}

https://github.com/cockroachdb/cockroach/blob/1bca2adcbc1deb23067e28369f8b24c99194f2bb/bazel-out/k8-opt/bin/pkg/sql/colexec/ordered_synchronizer.eg.go#L119-L121
https://github.com/cockroachdb/cockroach/blob/1bca2adcbc1deb23067e28369f8b24c99194f2bb/bazel-out/k8-opt/bin/pkg/sql/colexec/ordered_synchronizer.eg.go#L368-L370
https://github.com/cockroachdb/cockroach/blob/1bca2adcbc1deb23067e28369f8b24c99194f2bb/bazel-out/k8-opt/bin/pkg/sql/colexec/vec_comparators.eg.go#L300-L302
func (m *memColumn) Int64() Int64s {
return m.col.(Int64s)
}

GOROOT/src/runtime/iface.go#L271-L273
GOROOT/src/runtime/iface.go#L261-L263
GOROOT/src/runtime/panic.go#L883-L885
// unexpected.
retErr = errors.NewAssertionErrorWithWrappedErrf(err, "unexpected error from the vectorized engine")
}

pkg/sql/distsql_running.go in pkg/sql.(*DistSQLPlanner).Run at line 902
pkg/sql/colflow/vectorized_flow.go in pkg/sql/colflow.(*vectorizedFlow).Run at line 313
pkg/sql/flowinfra/flow.go in pkg/sql/flowinfra.(*FlowBase).Run at line 580
pkg/sql/execinfra/processorsbase.go in pkg/sql/execinfra.(*ProcessorBaseNoHelper).Run at line 726
pkg/sql/execinfra/base.go in pkg/sql/execinfra.Run at line 193
pkg/sql/colflow/flow_coordinator.go in pkg/sql/colflow.(*FlowCoordinator).Next at line 150
pkg/sql/colexecerror/error.go in pkg/sql/colexecerror.CatchVectorizedRuntimeError at line 92
pkg/sql/colflow/flow_coordinator.go in pkg/sql/colflow.(*FlowCoordinator).nextAdapter at line 145
pkg/sql/colflow/flow_coordinator.go in pkg/sql/colflow.(*FlowCoordinator).next at line 128
pkg/sql/colexec/materializer.go in pkg/sql/colexec.(*Materializer).Next at line 278
pkg/sql/colexecerror/error.go in pkg/sql/colexecerror.CatchVectorizedRuntimeError at line 92
pkg/sql/colexec/materializer.go in pkg/sql/colexec.(*Materializer).nextAdapter at line 272
pkg/sql/colexec/materializer.go in pkg/sql/colexec.(*Materializer).next at line 247
pkg/sql/colflow/stats.go in pkg/sql/colflow.(*batchInfoCollector).Next at line 126
pkg/sql/colexecerror/error.go in pkg/sql/colexecerror.CatchVectorizedRuntimeError at line 92
pkg/sql/colflow/stats.go in pkg/sql/colflow.(*batchInfoCollector).next at line 118
pkg/sql/colexec/limit.go in pkg/sql/colexec.(*limitOp).Next at line 47
pkg/sql/colexec/colexecdisk/disk_spiller.go in pkg/sql/colexec/colexecdisk.(*diskSpillerBase).Next at line 200
pkg/sql/colexecerror/error.go in pkg/sql/colexecerror.CatchVectorizedRuntimeError at line 92
pkg/sql/colexec/colexecdisk/disk_spiller.go in pkg/sql/colexec/colexecdisk.(*diskSpillerBase).Next.func1 at line 202
pkg/sql/colexec/unordered_distinct.go in pkg/sql/colexec.(*UnorderedDistinct).Next at line 98
pkg/sql/colflow/stats.go in pkg/sql/colflow.(*batchInfoCollector).Next at line 126
pkg/sql/colexecerror/error.go in pkg/sql/colexecerror.CatchVectorizedRuntimeError at line 92
pkg/sql/colflow/stats.go in pkg/sql/colflow.(*batchInfoCollector).next at line 118
bazel-out/k8-opt/bin/pkg/sql/colexec/ordered_synchronizer.eg.go in pkg/sql/colexec.(*OrderedSynchronizer).Next at line 120
bazel-out/k8-opt/bin/pkg/sql/colexec/ordered_synchronizer.eg.go in pkg/sql/colexec.(*OrderedSynchronizer).updateComparators at line 369
bazel-out/k8-opt/bin/pkg/sql/colexec/vec_comparators.eg.go in pkg/sql/colexec.(*Int64VecComparator).setVec at line 301
pkg/col/coldata/vec.go in pkg/col/coldata.(*memColumn).Int64 at line 233
GOROOT/src/runtime/iface.go in runtime.panicdottypeI at line 272
GOROOT/src/runtime/iface.go in runtime.panicdottypeE at line 262
GOROOT/src/runtime/panic.go in runtime.gopanic at line 884
pkg/sql/colexecerror/error.go in pkg/sql/colexecerror.CatchVectorizedRuntimeError.func1 at line 89

Tags

Tag Value
Command start-single-node
Environment v23.1.19
Go Version go1.19.13
Platform linux amd64
Distribution CCL
Cockroach Release v23.1.19
Cockroach SHA 1bca2ad
# of CPUs 36
# of Goroutines 619

Jira issue: CRDB-38076

@cockroach-sentry cockroach-sentry added O-sentry Originated from an in-the-wild panic report. C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. labels Apr 22, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
C-bug Code not up to spec/doc, specs & docs deemed correct. Solution expected to change code/behavior. O-sentry Originated from an in-the-wild panic report.
Projects
None yet
Development

No branches or pull requests

1 participant