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

acceptance: TestBuildInfo panics in Cluster.IsReplicated #29151

Closed
tbg opened this issue Aug 27, 2018 · 8 comments
Closed

acceptance: TestBuildInfo panics in Cluster.IsReplicated #29151

tbg opened this issue Aug 27, 2018 · 8 comments
Assignees
Labels
A-kv-client Relating to the KV client and the KV interface.
Milestone

Comments

@tbg
Copy link
Member

tbg commented Aug 27, 2018

[Test Output]
panic: runtime error: invalid memory address or nil pointer dereference [recovered]
	panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x0 pc=0xca3d5a]

goroutine 1655 [running]:
testing.tRunner.func1(0xc420503b30)
	/usr/local/go/src/testing/testing.go:742 +0x29d
panic(0x217aaa0, 0x37df670)
	/usr/local/go/src/runtime/panic.go:502 +0x229
database/sql.(*DB).conn(0x0, 0x293c920, 0xc4200540c0, 0xc4209e4001, 0x54, 0x19d, 0x54)
	/usr/local/go/src/database/sql/sql.go:1015 +0x3a
database/sql.(*DB).query(0x0, 0x293c920, 0xc4200540c0, 0x24dbe4e, 0x58, 0x0, 0x0, 0x0, 0xc420514201, 0xc4205142e0, ...)
	/usr/local/go/src/database/sql/sql.go:1437 +0x66
database/sql.(*DB).QueryContext(0x0, 0x293c920, 0xc4200540c0, 0x24dbe4e, 0x58, 0x0, 0x0, 0x0, 0x25781e0, 0xc420c4b620, ...)
	/usr/local/go/src/database/sql/sql.go:1419 +0xd2
database/sql.(*DB).Query(0x0, 0x24dbe4e, 0x58, 0x0, 0x0, 0x0, 0x2e25a2ec, 0xed316439c, 0x0)
	/usr/local/go/src/database/sql/sql.go:1433 +0x82
github.com/cockroachdb/cockroach/pkg/acceptance/localcluster.(*Cluster).isReplicated(0xc4202435c0, 0x0, 0x0, 0x0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/localcluster/cluster.go:353 +0xa4
github.com/cockroachdb/cockroach/pkg/acceptance/localcluster.(*Cluster).waitForFullReplication(0xc4202435c0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/localcluster/cluster.go:337 +0x61
github.com/cockroachdb/cockroach/pkg/acceptance/localcluster.(*Cluster).Start(0xc4202435c0, 0x293c920, 0xc4200540c0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/localcluster/cluster.go:214 +0xc6f
github.com/cockroachdb/cockroach/pkg/acceptance.StartCluster(0x293c920, 0xc4200540c0, 0xc420503b30, 0xc42032b1e0, 0x9, 0xc4206959a0, 0x4, 0x4, 0x12a05f200, 0x0, ...)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/util_cluster.go:143 +0xd7a
github.com/cockroachdb/cockroach/pkg/acceptance.runTestWithCluster(0xc420503b30, 0x2575110, 0x0, 0x0, 0x0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/util_cluster.go:71 +0x12b
github.com/cockroachdb/cockroach/pkg/acceptance.TestBuildInfo.func1(0xc420503b30)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/build_info_test.go:34 +0x48
testing.tRunner(0xc420503b30, 0x2574fd8)
	/usr/local/go/src/testing/testing.go:777 +0xd0
@tbg tbg added the A-kv-client Relating to the KV client and the KV interface. label Aug 27, 2018
@tbg tbg self-assigned this Aug 27, 2018
@petermattis
Copy link
Collaborator

Took a look at this just now and both of the instances I investigated showed that the server nodes didn't start because there was already something listening on the desired port:

E180827 19:04:30.037817 1 cli/error.go:230 cockroach server exited with error: consider changing the port via --listen-addr: listen tcp 127.0.0.1:26257: bind: address already in use

Because the server didn't start, Cluster.Nodes[0].db is never initialized so when we try to access it we get a nil pointer dereference.

How to track down what was listening on the port and preventing the server from starting?

@petermattis
Copy link
Collaborator

What if there is something sitting on the agent machine listening on those ports? I just saw a second failure in a row of TestBuildInfo which makes me think the agent itself is problematic.

@petermattis
Copy link
Collaborator

The two failed TestBuildInfo runs were both on the same teamcity agent.

@petermattis
Copy link
Collaborator

I think that any acceptance test that runs in "local" mode will be susceptible to this problem. We currently have 11 such tests:

TestBuildInfo
TestClusterRecovery
TestDecommission
TestEventLog
TestGossipPeerings
TestGossipRestart
TestGossipRestartFirstNodeNeedsIncoming
TestNodeRestart
TestRapidRestarts
TestStatusServer
TestVersionUpgrade

I already want to rewrite the gossip tests as roachtests (#29115). Seems reasonable to do the rest as well and then to get rid of the "local" cluster mode for acceptance tests. Sort of a rote task, but could probably be knocked out pretty quickly.

@petermattis
Copy link
Collaborator

Logging into a problematic agent shows that there are processes listening on the cockroach ports used for "local" clusters:

~ sudo lsof -i :26257
COMMAND     PID  USER   FD   TYPE DEVICE SIZE/OFF NODE NAME
cockroach 15395 agent   16u  IPv4 872254      0t0  TCP localhost:55322->localhost:26257 (ESTABLISHED)
cockroach 15396 agent   16u  IPv4 870364      0t0  TCP localhost:55328->localhost:26257 (ESTABLISHED)
cockroach 15397 agent   16u  IPv4 874217      0t0  TCP localhost:55332->localhost:26257 (ESTABLISHED)
cockroach 16631 agent   11u  IPv4 870357      0t0  TCP localhost:26257 (LISTEN)
cockroach 16631 agent   16u  IPv4 870359      0t0  TCP localhost:26257->localhost:55322 (ESTABLISHED)
cockroach 16631 agent   17u  IPv4 874213      0t0  TCP localhost:55324->localhost:26257 (ESTABLISHED)
cockroach 16631 agent   18u  IPv4 870361      0t0  TCP localhost:26257->localhost:55324 (ESTABLISHED)
cockroach 16631 agent   20u  IPv4 874215      0t0  TCP localhost:26257->localhost:55328 (ESTABLISHED)
cockroach 16631 agent   21u  IPv4 875871      0t0  TCP localhost:26257->localhost:55332 (ESTABLISHED)

Looks like another run of TestBuildInfo didn't clean up properly:

agent 16631 13.6 2.3 754196 385864 ? Sl 17:21 6:31 /home/agent/work/.go/src/github.com/cockroachdb/cockroach/cockroach start --insecure --host=127.0.0.1 --port=26257 --http-port=26258 --store=/home/agent/work/.go/src/github.com/cockroachdb/cockroach/pkg/acceptance/.localcluster261699935/1 --listening-url-file=/home/agent/work/.go/src/github.com/cockroachdb/cockroach/pkg/acceptance/.localcluster261699935/1/cockroachdb-url --cache=256MiB --log-dir=/home/agent/work/.go/src/github.com/cockroachdb/cockroach/artifacts/acceptance/TestBuildInfo/runMode=local/1

Looking at the build history on that agent I see an earlier run of TestBuildInfo that failed in a different way:

F180831 15:51:44.872258 1626 acceptance/localcluster/cluster.go:206  node 2: node {Binary:/home/agent/work/.go/src/github.com/cockroachdb/cockroach/cockroach DataDir:/home/agent/work/.go/src/github.com/cockroachdb/cockroach/pkg/acceptance/.localcluster323842853/2 LogDir:/home/agent/work/.go/src/github.com/cockroachdb/cockroach/artifacts/acceptance/TestBuildInfo/runMode=local/2 Addr:127.0.0.1 ExtraArgs:[/home/agent/work/.go/src/github.com/cockroachdb/cockroach/cockroach start --insecure --host=127.0.0.1 --port=26259 --http-port=26260 --store=/home/agent/work/.go/src/github.com/cockroachdb/cockroach/pkg/acceptance/.localcluster323842853/2 --listening-url-file=/home/agent/work/.go/src/github.com/cockroachdb/cockroach/pkg/acceptance/.localcluster323842853/2/cockroachdb-url --cache=256MiB --log-dir=/home/agent/work/.go/src/github.com/cockroachdb/cockroach/artifacts/acceptance/TestBuildInfo/runMode=local/2] ExtraEnv:[] RPCPort:26259 HTTPPort:26260 DB: NumWorkers:0} was unable to join cluster within 1m0s
goroutine 1626 [running]:
github.com/cockroachdb/cockroach/pkg/util/log.getStacks(0xc4204c2100, 0xc4204c21e0, 0x3517700, 0x22)
	/go/src/github.com/cockroachdb/cockroach/pkg/util/log/clog.go:972 +0xcf
github.com/cockroachdb/cockroach/pkg/util/log.(*loggingT).outputLogEntry(0x3a621e0, 0xc400000004, 0x3517704, 0x22, 0xce, 0xc420aec000, 0x3af)
	/go/src/github.com/cockroachdb/cockroach/pkg/util/log/clog.go:841 +0x804
github.com/cockroachdb/cockroach/pkg/util/log.addStructured(0x294b320, 0xc4200540c0, 0x4, 0x2, 0x245ec30, 0xb, 0xc420b49a18, 0x2, 0x2)
	/go/src/github.com/cockroachdb/cockroach/pkg/util/log/structured.go:154 +0x2e5
github.com/cockroachdb/cockroach/pkg/util/log.logDepth(0x294b320, 0xc4200540c0, 0x1, 0xc400000004, 0x245ec30, 0xb, 0xc420b49a18, 0x2, 0x2)
	/go/src/github.com/cockroachdb/cockroach/pkg/util/log/log.go:69 +0x8c
github.com/cockroachdb/cockroach/pkg/util/log.Fatalf(0x294b320, 0xc4200540c0, 0x245ec30, 0xb, 0xc420b49a18, 0x2, 0x2)
	/go/src/github.com/cockroachdb/cockroach/pkg/util/log/log.go:172 +0x7e
github.com/cockroachdb/cockroach/pkg/acceptance/localcluster.(*Cluster).Start(0xc42075e840, 0x294b320, 0xc4200540c0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/localcluster/cluster.go:206 +0xb1f
github.com/cockroachdb/cockroach/pkg/acceptance.StartCluster(0x294b320, 0xc4200540c0, 0xc420b101e0, 0xc420358370, 0x9, 0xc420844960, 0x4, 0x4, 0x12a05f200, 0x0, ...)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/util_cluster.go:143 +0xd7a
github.com/cockroachdb/cockroach/pkg/acceptance.runTestWithCluster(0xc420b101e0, 0x2583ca8, 0x0, 0x0, 0x0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/util_cluster.go:71 +0x12b
github.com/cockroachdb/cockroach/pkg/acceptance.TestBuildInfo.func1(0xc420b101e0)
	/go/src/github.com/cockroachdb/cockroach/pkg/acceptance/build_info_test.go:34 +0x48
testing.tRunner(0xc420b101e0, 0x2583b70)
	/usr/local/go/src/testing/testing.go:777 +0xd0
created by testing.(*T).Run
	/usr/local/go/src/testing/testing.go:824 +0x2e0

Node 2 couldn't connect here because node 1 crashed:

panic: runtime error: invalid memory address or nil pointer dereference
[signal SIGSEGV: segmentation violation code=0x1 addr=0x18 pc=0x17499cf]

goroutine 47 [running]:
github.com/cockroachdb/cockroach/pkg/util/contextutil.(*reasonCancelCtx).Err(0xc4294af260, 0x30, 0x28a36a0)
	/go/src/github.com/cockroachdb/cockroach/pkg/util/contextutil/context.go:40 +0x7f
github.com/cockroachdb/cockroach/pkg/kv.(*grpcTransport).sendBatch(0xc4294af7d0, 0x2f72760, 0xc4294af860, 0x2f551e0, 0xc4202bca70, 0x0, 0x0, 0x100000001, 0x1, 0x1, ...)
	/go/src/github.com/cockroachdb/cockroach/pkg/kv/transport.go:191 +0x9e
github.com/cockroachdb/cockroach/pkg/kv.(*grpcTransport).SendNext(0xc4294af7d0, 0x2f72760, 0xc4294af6e0, 0x0, 0x0, 0x100000001, 0x1, 0x1, 0x0, 0xc42088ef00, ...)
	/go/src/github.com/cockroachdb/cockroach/pkg/kv/transport.go:169 +0x138
github.com/cockroachdb/cockroach/pkg/kv.(*DistSender).sendToReplicas(0xc420246700, 0x2f72760, 0xc4294af6e0, 0xc420246750, 0x1, 0xc4203c77a0, 0x1, 0x1, 0x0, 0x0, ...)
	/go/src/github.com/cockroachdb/cockroach/pkg/kv/dist_sender.go:1303 +0x30a
github.com/cockroachdb/cockroach/pkg/kv.(*DistSender).sendRPC(0xc420246700, 0x2f72760, 0xc4294af6e0, 0x1, 0xc4203c77a0, 0x1, 0x1, 0x0, 0x0, 0x0, ...)
	/go/src/github.com/cockroachdb/cockroach/pkg/kv/dist_sender.go:387 +0x252

(@jordanlewis reasonCancelCtx!!!)

So it seems like TestBuildInfo failed here because of a simple bug during development. But then the local cluster code called log.Fatal which exits the process without allowing any cleanup to be performed. Doh!

@tbg
Copy link
Member Author

tbg commented Aug 31, 2018

Nice sleuthing @petermattis. Arguably this problem is hard to avoid when sharing resources (roachtest might run into the same, but is probably better about killing stuff out of its way before it starts new things) but we can preemptively kill all processes when such a package/suite starts running.

@jordanlewis
Copy link
Member

(@jordanlewis reasonCancelCtx!!!)
Heh, oops! Unless the policy should be "don't push crappy development code to a PR if it might panic", we need to teach TeamCity to kill things more aggressively indeed.

@petermattis
Copy link
Collaborator

Arguably this problem is hard to avoid when sharing resources (roachtest might run into the same, but is probably better about killing stuff out of its way before it starts new things) but we can preemptively kill all processes when such a package/suite starts running.

Yes, I think roachtest will be better about killing off stuff and not leave it lingering. I'm also taking a look at getting rid of the log.Fatals in acceptance/localcluster, though getting the right error propagation there might be more difficult than switching to roachtest.

Heh, oops! Unless the policy should be "don't push crappy development code to a PR if it might panic", we need to teach TeamCity to kill things more aggressively indeed.

Yes, that is the new policy. From now on nobody is allowed to push buggy PRs!

petermattis added a commit to petermattis/cockroach that referenced this issue Aug 31, 2018
Move the build-info acceptance test to a new acceptance/build-info
roachtest. Move the existing cli/node-status to
acceptance/cli/node-status. The acceptance roachtests are all going to
share the same cluster to amortize the cluster setup/teardown time.

Fun fact: the acceptance/build-info roachtest is about twice as fast as
the old build-info acceptance test.

See cockroachdb#29151

Release note: None
craig bot pushed a commit that referenced this issue Aug 31, 2018
29437: roachtest: add acceptance/build-info r=benesch a=petermattis

Move the build-info acceptance test to a new acceptance/build-info
roachtest. Move the existing cli/node-status to
acceptance/cli/node-status. The acceptance roachtests are all going to
share the same cluster to amortize the cluster setup/teardown time.

Fun fact: the acceptance/build-info roachtest is about twice as fast as
the old build-info acceptance test.

See #29151

Release note: None

Co-authored-by: Peter Mattis <[email protected]>
petermattis added a commit to petermattis/cockroach that referenced this issue Aug 31, 2018
Move the cluster-recovery and node-restart acceptance tests to
acceptance/bank/{cluster-recovery,node-restart} roachtests.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the status-server acceptance test to a new acceptance/status-server
roachtest.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the rapid-restart acceptance test to a new acceptance/rapid-restart
roachtest.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the gossip-peerings and gossip-restart acceptance tests to new
acceptance/gossip/{peerings,restart} roachtests.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the gossip-restart-first-node-needs-incoming acceptance test to a
new acceptance/gossip/restart-node-one roachtest.

See cockroachdb#29151
Fixes cockroachdb#29115

Release note: None
craig bot pushed a commit that referenced this issue Sep 1, 2018
29449: roachtest: add acceptance/bank/{cluster-recovery,node-restart} r=benesch a=petermattis

Move the cluster-recovery and node-restart acceptance tests to
acceptance/bank/{cluster-recovery,node-restart} roachtests.

See #29151

Release note: None

Co-authored-by: Peter Mattis <[email protected]>
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the gossip-peerings and gossip-restart acceptance tests to new
acceptance/gossip/{peerings,restart} roachtests.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the gossip-restart-first-node-needs-incoming acceptance test to a
new acceptance/gossip/restart-node-one roachtest.

See cockroachdb#29151
Fixes cockroachdb#29115

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 1, 2018
Move the version-upgrade acceptance test to a new
acceptance/version-upgrade roachtest.

See cockroachdb#29151

Release note: None
craig bot pushed a commit that referenced this issue Sep 1, 2018
29324: storage: fix a nasty merge deadlock r=tschottdorf,nvanbenschoten a=benesch

Fix a nasty edge case which could cause a concurrent merge and split to
deadlock. See the comment on TestStoreRangeMergeConcurrentSplit for
details.

Release note: None

29465: roachtest: add acceptance/gossip/* r=benesch a=petermattis

Move the gossip acceptance tests to roachtests.

See #29151
Fixes #29115

Co-authored-by: Nikhil Benesch <[email protected]>
Co-authored-by: Peter Mattis <[email protected]>
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 2, 2018
Move the version-upgrade acceptance test to a new
acceptance/version-upgrade roachtest.

See cockroachdb#29151

Release note: None
@petermattis petermattis assigned petermattis and unassigned tbg Sep 2, 2018
@petermattis petermattis added this to the 2.1 milestone Sep 3, 2018
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 3, 2018
Move the decommission acceptance test to a new acceptance/decommission
roachtest.

Fixes cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 4, 2018
Move the version-upgrade acceptance test to a new
acceptance/version-upgrade roachtest.

See cockroachdb#29151

Release note: None
craig bot pushed a commit that referenced this issue Sep 4, 2018
29444: changefeedccl: resurrect changefeed benchmark r=mrtracy a=danhhz

    name                           time/op
    ChangefeedTicks/InitialScan-8    12.3ms ± 3%
    ChangefeedTicks/SteadyState-8    52.3ms ± 3%

    name                           speed
    ChangefeedTicks/InitialScan-8  11.6MB/s ± 3%
    ChangefeedTicks/SteadyState-8  2.73MB/s ± 3%

    name                           alloc/op
    ChangefeedTicks/InitialScan-8    2.08MB ± 0%
    ChangefeedTicks/SteadyState-8    5.37MB ± 0%

    name                           allocs/op
    ChangefeedTicks/InitialScan-8     35.1k ± 0%
    ChangefeedTicks/SteadyState-8     68.6k ± 0%

Release note: None

29470: roachtest: add acceptance/version-upgrade r=nvanbenschoten a=petermattis

Move the version-upgrade acceptance test to a new
acceptance/version-upgrade roachtest.

See #29151

Release note: None

29511: roachtest: relax space reclamation in drop test r=petermattis a=tschottdorf

We know it fails; we are not looking into it right now due to other priorities.
This should be investigated and fixed in the course of #29290.

Closes #29232.
Closes #29327.

Release note: None

Co-authored-by: Daniel Harrison <[email protected]>
Co-authored-by: Peter Mattis <[email protected]>
Co-authored-by: Tobias Schottdorf <[email protected]>
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 4, 2018
Move the decommission acceptance test to a new acceptance/decommission
roachtest.

Fixes cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 4, 2018
Move the decommission acceptance test to a new acceptance/decommission
roachtest.

Fixes cockroachdb#29151

Release note: None
craig bot pushed a commit that referenced this issue Sep 4, 2018
29367: changefeedccl: error when a watched table backfills r=mrtracy,vivekmenezes a=danhhz

When a table is currently being backfilled for a schema change (e.g.
adding a column with a default value), it's unclear what the expectation
is for any rows that are changed during the backfill. Our current
invariant is that rows are emitted with an updated timestamp and a later
SELECT ... AS OF SYSTEM TIME for that row would exactly match the
emitted data. During the backfill, there is nothing we can emit that
would definitely meet that invariant (because the backfill can be
aborted and rolled back).

In the meantime, this commit makes sure that we error whenever a
backfill happens, even if it's fast enough that we never get it from
leasing.

This also paves the way for switching to RangeFeed, which doesn't have
the convenient `fetchSpansForTargets` hook that the ExportRequest based
poller was (ab)using.

Closes #28643

Release note (bug fix): CHANGEFEEDs now error when a watched table
backfills (instead of undefined behavior)

29427: docs: Fix replace and link in table_ref diagram r=jseldess a=jseldess

Needed for cockroachdb/docs#3682.

Release note: None

29488: roachtest: add acceptance/decommission r=benesch,tschottdorf a=petermattis

Move the decommission acceptance test to a new acceptance/decommission
roachtest.

Fixes #29151

Release note: None

29538: stats: document stats-related commands as experimental r=RaduBerinde a=RaduBerinde

Update the documentation inside `sql.y` to designate the stats-related
statements as experimental.

Release note: None

29546: roachtest: skip (intentionally) failing Kafka chaos test r=petermattis a=tschottdorf

This test has no chance of passing until Kafka chaos is actually
supported (see #28636).

Touches #29196.

Release note: None

29550: testcluster: make manual replication mode disable the merge queue r=petermattis a=benesch

TestClusters have a manual replication mode for use in tests that need
to precisely control replication on a cluster. Teach that mode to
disable the merge queue in addition to the split and replicate queues.
This decreases the number of tests that need to directly disable the
merge queue.

Release note: None

29552: ui: add attributes to login form so LastPass will autofill it r=vilterp a=vilterp

LastPass wasn't confident enough to autofill and autologin without these
attributes.

Fixes #29529 (fixes for LastPass, but maybe not other PW managers)

Release note (admin ui change): Add attributes to the login form to allow LastPass to properly recognize it.

Co-authored-by: Daniel Harrison <[email protected]>
Co-authored-by: Jesse Seldess <[email protected]>
Co-authored-by: Peter Mattis <[email protected]>
Co-authored-by: Radu Berinde <[email protected]>
Co-authored-by: Tobias Schottdorf <[email protected]>
Co-authored-by: Nikhil Benesch <[email protected]>
Co-authored-by: Pete Vilter <[email protected]>
@craig craig bot closed this as completed in #29488 Sep 4, 2018
Amruta-Ranade pushed a commit that referenced this issue Sep 4, 2018
29367: changefeedccl: error when a watched table backfills r=mrtracy,vivekmenezes a=danhhz

When a table is currently being backfilled for a schema change (e.g.
adding a column with a default value), it's unclear what the expectation
is for any rows that are changed during the backfill. Our current
invariant is that rows are emitted with an updated timestamp and a later
SELECT ... AS OF SYSTEM TIME for that row would exactly match the
emitted data. During the backfill, there is nothing we can emit that
would definitely meet that invariant (because the backfill can be
aborted and rolled back).

In the meantime, this commit makes sure that we error whenever a
backfill happens, even if it's fast enough that we never get it from
leasing.

This also paves the way for switching to RangeFeed, which doesn't have
the convenient `fetchSpansForTargets` hook that the ExportRequest based
poller was (ab)using.

Closes #28643

Release note (bug fix): CHANGEFEEDs now error when a watched table
backfills (instead of undefined behavior)

29427: docs: Fix replace and link in table_ref diagram r=jseldess a=jseldess

Needed for cockroachdb/docs#3682.

Release note: None

29488: roachtest: add acceptance/decommission r=benesch,tschottdorf a=petermattis

Move the decommission acceptance test to a new acceptance/decommission
roachtest.

Fixes #29151

Release note: None

29538: stats: document stats-related commands as experimental r=RaduBerinde a=RaduBerinde

Update the documentation inside `sql.y` to designate the stats-related
statements as experimental.

Release note: None

29546: roachtest: skip (intentionally) failing Kafka chaos test r=petermattis a=tschottdorf

This test has no chance of passing until Kafka chaos is actually
supported (see #28636).

Touches #29196.

Release note: None

29550: testcluster: make manual replication mode disable the merge queue r=petermattis a=benesch

TestClusters have a manual replication mode for use in tests that need
to precisely control replication on a cluster. Teach that mode to
disable the merge queue in addition to the split and replicate queues.
This decreases the number of tests that need to directly disable the
merge queue.

Release note: None

29552: ui: add attributes to login form so LastPass will autofill it r=vilterp a=vilterp

LastPass wasn't confident enough to autofill and autologin without these
attributes.

Fixes #29529 (fixes for LastPass, but maybe not other PW managers)

Release note (admin ui change): Add attributes to the login form to allow LastPass to properly recognize it.

Co-authored-by: Daniel Harrison <[email protected]>
Co-authored-by: Jesse Seldess <[email protected]>
Co-authored-by: Peter Mattis <[email protected]>
Co-authored-by: Radu Berinde <[email protected]>
Co-authored-by: Tobias Schottdorf <[email protected]>
Co-authored-by: Nikhil Benesch <[email protected]>
Co-authored-by: Pete Vilter <[email protected]>
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the build-info acceptance test to a new acceptance/build-info
roachtest. Move the existing cli/node-status to
acceptance/cli/node-status. The acceptance roachtests are all going to
share the same cluster to amortize the cluster setup/teardown time.

Fun fact: the acceptance/build-info roachtest is about twice as fast as
the old build-info acceptance test.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the cluster-recovery and node-restart acceptance tests to
acceptance/bank/{cluster-recovery,node-restart} roachtests.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the status-server acceptance test to a new acceptance/status-server
roachtest.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the rapid-restart acceptance test to a new acceptance/rapid-restart
roachtest.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the gossip-peerings and gossip-restart acceptance tests to new
acceptance/gossip/{peerings,restart} roachtests.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the gossip-restart-first-node-needs-incoming acceptance test to a
new acceptance/gossip/restart-node-one roachtest.

See cockroachdb#29151
Fixes cockroachdb#29115

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the version-upgrade acceptance test to a new
acceptance/version-upgrade roachtest.

See cockroachdb#29151

Release note: None
petermattis added a commit to petermattis/cockroach that referenced this issue Sep 5, 2018
Move the decommission acceptance test to a new acceptance/decommission
roachtest.

Fixes cockroachdb#29151

Release note: None
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
A-kv-client Relating to the KV client and the KV interface.
Projects
None yet
Development

No branches or pull requests

3 participants