Skip to content

Instantly share code, notes, and snippets.

@jordanlewis
Created December 17, 2018 21:51
Show Gist options
  • Save jordanlewis/122bf04dc24d792e620b41c92dc632b6 to your computer and use it in GitHub Desktop.
Save jordanlewis/122bf04dc24d792e620b41c92dc632b6 to your computer and use it in GitHub Desktop.
'stacktrace: {u\'frames\': [{u\'function\': u\'func4\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go\', u\'pre_context\': [u\'\tif sqlServer != nil {\', u\'\t\twg.Add(1)\', u\'\t\tgo func() {\'], u\'post_context\': [u"\t\t\t// TODO(andrei): Should we sometimes transmit the writerErr\'s to the", u\'\t\t\t// client?\', u\'\t\t\twg.Done()\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/pgwire/conn.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql/pgwire.(*conn).serveImpl\', u\'in_app\': True, u\'context_line\': u\'\t\t\twriterErr = sqlServer.ServeConn(ctx, connHandler, reserved, cancelConn)\', u\'lineno\': 319}, {u\'function\': u\'ServeConn\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go\', u\'pre_context\': [u\'\t\tr := recover()\', u\'\t\th.ex.closeWrapper(ctx, r)\', u\'\t}()\'], u\'post_context\': [u\'}\', u\'\', u"// sessionParams groups arguments for initializing a connExecutor\'s session"], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*Server)\', u\'in_app\': True, u\'context_line\': u\'\treturn h.ex.run(ctx, s.pool, reserved, cancel)\', u\'lineno\': 409}, {u\'function\': u\'run\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go\', u\'pre_context\': [u\'\t\t\tex.phaseTimes[sessionEndParse] = tcmd.ParseEnd\', u\'\', u\'\t\t\tctx := withStatement(ex.Ctx(), ex.curStmt)\'], u\'post_context\': [u\'\t\t\tif err != nil {\', u\'\t\t\t\treturn err\', u\'\t\t\t}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor)\', u\'in_app\': True, u\'context_line\': u\'\t\t\tev, payload, err = ex.execStmt(ctx, curStmt, stmtRes, nil /* pinfo */, pos)\', u\'lineno\': 1139}, {u\'function\': u\'execStmt\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'pre_context\': [u\'\tcase stateNoTxn:\', u\'\t\tev, payload = ex.execStmtInNoTxnState(ctx, stmt)\', u\'\tcase stateOpen:\'], u\'post_context\': [u\'\t\tswitch ev.(type) {\', u\'\t\tcase eventNonRetriableErr:\', u\'\t\t\tex.server.StatementCounters.FailureCount.Inc(1)\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor)\', u\'in_app\': True, u\'context_line\': u\'\t\tev, payload, err = ex.execStmtInOpenState(ctx, stmt, pinfo, res)\', u\'lineno\': 98}, {u\'function\': u\'execStmtInOpenState\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'pre_context\': [u\'\t\t}\', u\'\t} else {\', u\'\t\tp.autoCommit = os.ImplicitTxn.Get() && !ex.server.cfg.TestingKnobs.DisableAutoCommit\'], u\'post_context\': [u\'\t\t\treturn nil, nil, err\', u\'\t\t}\', u\'\t\tif err := res.Err(); err != nil {\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor)\', u\'in_app\': True, u\'context_line\': u\'\t\tif err := ex.dispatchToExecutionEngine(ctx, stmt, p, res); err != nil {\', u\'lineno\': 417}, {u\'function\': u\'dispatchToExecutionEngine\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'pre_context\': [u\'\t\t\tflags.Set(planFlagDistSQLLocal)\', u\'\t\t}\', u\'\t\tex.sessionTracing.TraceExecStart(ctx, "distributed")\'], u\'post_context\': [u\'\t} else {\', u\'\t\tex.sessionTracing.TraceExecStart(ctx, "local")\', u\'\t\terr = ex.execWithLocalEngine(ctx, planner, stmt.AST.StatementType(), res)\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor)\', u\'in_app\': True, u\'context_line\': u\'\t\terr = ex.execWithDistSQLEngine(ctx, planner, stmt.AST.StatementType(), res, distributePlan)\', u\'lineno\': 847}, {u\'function\': u\'execWithDistSQLEngine\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'pre_context\': [u\'\', u\'\t// We pass in whether or not we wanted to distribute this plan, which tells\', u\'\t// the planner whether or not to plan remote table readers.\'], u\'post_context\': [u\'\t\tctx, evalCtx, planCtx, planner.txn, planner.curPlan.plan, recv)\', u\'\treturn recv.commErr\', u\'}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor_exec.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*connExecutor)\', u\'in_app\': True, u\'context_line\': u\'\tex.server.cfg.DistSQLPlanner.PlanAndRun(\', u\'lineno\': 1005}, {u\'function\': u\'PlanAndRun\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/distsql_running.go\', u\'pre_context\': [u\'\t\treturn\', u\'\t}\', u\'\tdsp.FinalizePlan(planCtx, &physPlan)\'], u\'post_context\': [u\'}\', u\'\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/distsql_running.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*DistSQLPlanner)\', u\'in_app\': True, u\'context_line\': u\'\tdsp.Run(planCtx, txn, &physPlan, recv, evalCtx, nil /* finishedSetupFn */)\', u\'lineno\': 805}, {u\'function\': u\'Run\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/distsql_running.go\', u\'pre_context\': [u\'\t}\', u\'\', u\'\t// TODO(radu): this should go through the flow scheduler.\'], u\'post_context\': [u\'\t\tlog.Fatalf(ctx, "unexpected error from syncFlow.Start(): %s "+\', u\'\t\t\t"The error should have gone to the consumer.", err)\', u\'\t}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/distsql_running.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*DistSQLPlanner)\', u\'in_app\': True, u\'context_line\': u\'\tif err := flow.StartSync(ctx, func() {}); err != nil {\', u\'lineno\': 261}, {u\'function\': u\'StartSync\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/distsqlrun/flow.go\', u\'pre_context\': [u\'\t\treturn err\', u\'\t}\', u\'\tif len(f.processors) > 0 {\'], u\'post_context\': [u\'\t}\', u\'\treturn nil\', u\'}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/distsqlrun/flow.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql/distsqlrun.(*Flow)\', u\'in_app\': True, u\'context_line\': u\'\t\tf.processors[len(f.processors)-1].Run(ctx, nil)\', u\'lineno\': 618}, {u\'function\': u\'Run\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/distsqlrun/processors.go\', u\'pre_context\': [u\'\tif pb.out.output == nil {\', u\'\t\tpanic("processor output not initialized for emitting rows")\', u\'\t}\'], u\'post_context\': [u\'\tRun(ctx, pb.self, pb.out.output)\', u\'\tif wg != nil {\', u\'\t\twg.Done()\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/distsqlrun/processors.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql/distsqlrun.(*ProcessorBase)\', u\'in_app\': True, u\'context_line\': u\'\tctx = pb.self.Start(ctx)\', u\'lineno\': 803}, {u\'function\': u\'Start\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/plan_node_to_row_source.go\', u\'pre_context\': [u\'\tif !p.started {\', u\'\t\tp.started = true\', u\'\t\t// This starts all of the nodes below this node.\'], u\'post_context\': [u\'\t\t\tp.MoveToDraining(err)\', u\'\t\t\treturn ctx\', u\'\t\t}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/plan_node_to_row_source.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*planNodeToRowSource)\', u\'in_app\': True, u\'context_line\': u\'\t\tif err := startExec(p.params, p.node); err != nil {\', u\'lineno\': 140}, {u\'function\': u\'startExec\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/plan.go\', u\'pre_context\': [u\'\t\t\treturn nil\', u\'\t\t},\', u\'\t}\'], u\'post_context\': [u\'}\', u\'\', u\'func (p *planner) maybePlanHook(ctx context.Context, stmt tree.Statement) (planNode, error) {\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/plan.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql\', u\'in_app\': True, u\'context_line\': u\'\treturn walkPlan(params.ctx, plan, o)\', u\'lineno\': 725}, {u\'function\': u\'walkPlan\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'pre_context\': [u\'// level.\', u\'func walkPlan(ctx context.Context, plan planNode, observer planObserver) error {\', u\'\tv := makePlanVisitor(ctx, observer)\'], u\'post_context\': [u\'\treturn v.err\', u\'}\', u\'\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql\', u\'in_app\': True, u\'context_line\': u\'\tv.visit(plan)\', u\'lineno\': 65}, {u\'function\': u\'visit\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'pre_context\': [u\'\t\t\treturn newNode\', u\'\t\t}\', u\'\t}\'], u\'post_context\': [u\'\treturn plan\', u\'}\', u\'\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*planVisitor)\', u\'in_app\': True, u\'context_line\': u\'\tv.visitInternal(plan, name)\', u\'lineno\': 101}, {u\'function\': u\'visitInternal\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'pre_context\': [u\'\t\t}\', u\'\t\tn.source = v.visit(n.source)\', u\'\t}\'], u\'post_context\': [u\'\', u"// expr wraps observer.expr() and provides it with the current node\'s", u\'// name.\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*planVisitor)\', u\'in_app\': True, u\'context_line\': u\'}\', u\'lineno\': 578}, {u\'function\': u\'func1\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'pre_context\': [u\'\t\t\tif v.err != nil {\', u\'\t\t\t\treturn\', u\'\t\t\t}\'], u\'post_context\': [u\'\t\t}()\', u\'\t}\', u\'\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/walk.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*planVisitor).visitInternal\', u\'in_app\': True, u\'context_line\': u\'\t\t\tv.err = v.observer.leaveNode(name, plan)\', u\'lineno\': 134}, {u\'function\': u\'func2\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/plan.go\', u\'pre_context\': [u\'\t\t},\', u\'\t\tleaveNode: func(_ string, n planNode) error {\', u\'\t\t\tif s, ok := n.(execStartable); ok {\'], u\'post_context\': [u\'\t\t\t}\', u\'\t\t\treturn nil\', u\'\t\t},\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/plan.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.startExec\', u\'in_app\': True, u\'context_line\': u\'\t\t\t\treturn s.startExec(params)\', u\'lineno\': 720}, {u\'function\': u\'startExec\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/values.go\', u\'pre_context\': [u\'\t\t\t\trow[i] = tree.DNull\', u\'\t\t\t} else {\', u\'\t\t\t\tvar err error\'], u\'post_context\': [u\'\t\t\t\tif err != nil {\', u\'\t\t\t\t\treturn err\', u\'\t\t\t\t}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/values.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*valuesNode)\', u\'in_app\': True, u\'context_line\': u\'\t\t\t\trow[i], err = typedExpr.Eval(params.EvalContext())\', u\'lineno\': 175}, {u\'function\': u\'Eval\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/sem/tree/eval.go\', u\'pre_context\': [u\'\tif left == DNull && !expr.fn.NullableArgs {\', u\'\t\treturn DNull, nil\', u\'\t}\'], u\'post_context\': [u\'\tif err != nil {\', u\'\t\treturn nil, err\', u\'\t}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/sem/tree/eval.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql/sem/tree.(*BinaryExpr)\', u\'in_app\': True, u\'context_line\': u\'\tright, err := expr.Right.(TypedExpr).Eval(ctx)\', u\'lineno\': 2715}, {u\'function\': u\'Eval\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/sem/tree/eval.go\', u\'pre_context\': [u\'\t\treturn DNull, err\', u\'\t}\', u\'\'], u\'post_context\': [u\'\tif err != nil {\', u\'\t\t// If we are facing a retry error, in particular those generated\', u\'\t\t// by crdb_internal.force_retry(), propagate it unchanged, so that\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/sem/tree/eval.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql/sem/tree.(*FuncExpr)\', u\'in_app\': True, u\'context_line\': u\'\tres, err := expr.fn.Fn(ctx, args)\', u\'lineno\': 3572}, {u\'function\': u\'func211\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/sem/builtins/builtins.go\', u\'pre_context\': [u\'\t\t\tReturnType: tree.FixedReturnType(types.Int),\', u\'\t\t\tFn: func(ctx *tree.EvalContext, args tree.Datums) (tree.Datum, error) {\', u\'\t\t\t\tmsg := string(*args[0].(*tree.DString))\'], u\'post_context\': [u\'\t\t\t},\', u\'\t\t\tInfo: "This function is used only by CockroachDB\'s developers for testing purposes.",\', u\'\t\t},\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/sem/builtins/builtins.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql/sem/builtins.glob.\', u\'in_app\': True, u\'context_line\': u\'\t\t\t\tpanic(msg)\', u\'lineno\': 2820}, {u\'function\': u\'gopanic\', u\'abs_path\': u\'/usr/local/Cellar/go/1.11/libexec/src/runtime/panic.go\', u\'pre_context\': [u\'\t\td._panic = (*_panic)(noescape(unsafe.Pointer(&p)))\', u\'\', u\'\t\tp.argp = unsafe.Pointer(getargp(0))\'], u\'post_context\': [u\'\t\tp.argp = nil\', u\'\', u\'\t\t// reflectcall did not panic. Remove d.\'], u\'filename\': u\'runtime/panic.go\', u\'module\': u\'runtime\', u\'in_app\': False, u\'context_line\': u\'\t\treflectcall(nil, unsafe.Pointer(d.fn), deferArgs(d), uint32(d.siz), uint32(d.siz))\', u\'lineno\': 513}, {u\'function\': u\'call32\', u\'abs_path\': u\'/usr/local/Cellar/go/1.11/libexec/src/runtime/asm_amd64.s\', u\'pre_context\': [u\'\tCALL\truntime\xb7reflectcallmove(SB)\', u\'\tRET\', u\'\'], u\'post_context\': [u\'CALLFN(\xb7call64, 64)\', u\'CALLFN(\xb7call128, 128)\', u\'CALLFN(\xb7call256, 256)\'], u\'filename\': u\'runtime/asm_amd64.s\', u\'module\': u\'runtime\', u\'in_app\': False, u\'context_line\': u\'CALLFN(\xb7call32, 32)\', u\'lineno\': 522}, {u\'function\': u\'func1\', u\'abs_path\': u\'/Users/jordan/repo/src/github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go\', u\'pre_context\': [u\') error {\', u\'\tdefer func() {\', u\'\t\tr := recover()\'], u\'post_context\': [u\'\t}()\', u\'\treturn h.ex.run(ctx, s.pool, reserved, cancel)\', u\'}\'], u\'filename\': u\'github.com/cockroachdb/cockroach/pkg/sql/conn_executor.go\', u\'module\': u\'github.com/cockroachdb/cockroach/pkg/sql.(*Server).ServeConn\', u\'in_app\': True, u\'context_line\': u\'\t\th.ex.closeWrapper(ctx, r)\', u\'lineno\': 407}]}'
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment