You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
❯ vtctlclient vdiff -- --help
W0913 13:58:48.039694 71302 log.go:39] Failed to read in config : Config File "vtconfig" Not Found in "[/Users/matt/git/vitess]". This is optional, and can be ignored if you are not using config files. For a detailed explanation, see https://github.com/vitessio/vitess/blob/main/doc/viper/viper.md#config-files.
Usage: vdiff [--source_cell=<cell>] [--target_cell=<cell>] [--tablet_types=in_order:RDONLY,REPLICA,PRIMARY] [--limit=<max rows to diff>] [--tables=<table list>] [--format=json] [--auto-retry] [--verbose] [--max_extra_rows_to_compare=1000] [--filtered_replication_wait_time=30s] [--debug_query] [--only_pks] [--wait] [--wait-update-interval=1m] <keyspace.workflow> [<action>] [<UUID>]
Perform a diff of all tables in the workflow
--auto-retry Should this vdiff automatically retry and continue in case of recoverable errors (default true)
--checksum Use row-level checksums to compare, not yet implemented
--debug_query Adds a mysql query to the report that can be used for further debugging
--filtered_replication_wait_time duration Specifies the maximum time to wait, in seconds, for filtered replication to catch up on primary migrations. The migration will be cancelled on a timeout. (default 30s)
--format string Format of report (default "text")
--limit int Max rows to stop comparing after (default 9223372036854775807)
--max_extra_rows_to_compare int If there are collation differences between the source and target, you can have rows that are identical but simply returned in a different order from MySQL. We will do a second pass to compare the rows for any actual differences in this case and this flag allows you to control the resources used for this operation. (default 1000)
--only_pks When reporting missing rows, only show primary keys in the report.
--sample_pct int How many rows to sample, not yet implemented (default 100)
--source_cell string The source cell to compare from; default is any available cell
--tables string Only run vdiff for these tables in the workflow
--tablet_types string Tablet types for source (PRIMARY is always used on target) (default "in_order:RDONLY,REPLICA,PRIMARY")
--target_cell string The target cell to compare with; default is any available cell
--update-table-stats Update the table statistics, using ANALYZE TABLE, on each table involved in the VDiff during initialization. This will ensure that progress estimates are as accurate as possible -- but it does involve locks and can potentially impact query processing on the target keyspace.
--v1 Use legacy VDiff v1
--verbose Show verbose vdiff output in summaries
--wait When creating or resuming a vdiff, wait for it to finish before exiting
--wait-update-interval duration When waiting on a vdiff to finish, check and display the current status this often (default 1m0s)
However, it does not actually use any available cell by default.
Reproduction Steps
git checkout main
make build
pushd ${VTROOT}/examples/local
source ../common/env.sh
./101_initial_cluster.sh
mysql < ../common/insert_commerce_data.sql
vtctldclient AddCellInfo --root /vitess/zone0 --server-address "${ETCD_SERVER}" zone0
vtctldclient AddCellInfo --root /vitess/zone2 --server-address "${ETCD_SERVER}" zone2
../common/scripts/vtorc-down.sh
for i in 200 201 202; do
CELL=zone2 TABLET_UID=$i ../common/scripts/mysqlctl-up.sh
CELL=zone2 KEYSPACE=customer TABLET_UID=$i ../common/scripts/vttablet-up.sh
done
vtctldclient InitShardPrimary --force customer/0 zone2-200
vtctldclient MoveTables --workflow commerce2customer --target-keyspace customer create --cells "zone1,zone2" --source-keyspace commerce --tables "customer,corder"
vtctlclient VDiff -- --format=json customer.commerce2customer
sleep 15
vtctlclient VDiff -- --format=json customer.commerce2customer show last | jq -r '.Progress'
grep -R "No healthy serving" ${VTDATAROOT}/tmp/*INFO*
./401_teardown.sh
popd
Binary Version
Version: 18.0.0-SNAPSHOT (Git revision 8377caa4466e50cf62daf7f955c7cb791dbc5eaf branch 'main') built on Wed Sep 13 15:08:24 EDT 2023 by matt@pslord.local using go1.21.1 darwin/arm64
Operating System and Environment details
N/A
Log Fragments
N/A
The text was updated successfully, but these errors were encountered:
Overview of the Issue
The documented default value for the
--source_cell
and--target_cell
flags is 'any available cell': https://vitess.io/docs/reference/vreplication/vdiff/#parametersAnd you can see that in the help output as well:
However, it does not actually use any available cell by default.
Reproduction Steps
Binary Version
Version: 18.0.0-SNAPSHOT (Git revision 8377caa4466e50cf62daf7f955c7cb791dbc5eaf branch 'main') built on Wed Sep 13 15:08:24 EDT 2023 by matt@pslord.local using go1.21.1 darwin/arm64
Operating System and Environment details
Log Fragments
The text was updated successfully, but these errors were encountered: