mirror of https://github.com/vitessio/vitess.git
Compare commits
142 Commits
Author | SHA1 | Date |
---|---|---|
|
c8d71bcdf7 | |
|
de17a2da90 | |
|
c336ea3bea | |
|
8d90d26df8 | |
|
f27b909b3b | |
|
7dd3c6b550 | |
|
ee051c639d | |
|
44615b179a | |
|
b9fcdba600 | |
|
c91f253fe1 | |
|
6c5a048081 | |
|
b344301474 | |
|
aef22581eb | |
|
22f9190a34 | |
|
ecb1a54a9e | |
|
24d67c4dc6 | |
|
5b72bc2515 | |
|
dc64dfee94 | |
|
5b516a2bd0 | |
|
21df269ca9 | |
|
4665972c88 | |
|
51fc97722a | |
|
f9c10b9ef3 | |
|
f4a735b27f | |
|
f4c531d25a | |
|
e4a0f79838 | |
|
b9e2ed75ae | |
|
a830cb018e | |
|
1b1f69b4bd | |
|
95dd11c26b | |
|
29836cd3f4 | |
|
acadf2ee5d | |
|
abf1f77d4f | |
|
d0ce40c413 | |
|
9c5d552df1 | |
|
256ca78391 | |
|
9cafbd3b42 | |
|
a0433f3037 | |
|
69f5a2bd57 | |
|
a3854e5bf6 | |
|
3baf4bc095 | |
|
2df46c73ae | |
|
d9380c153a | |
|
4fbab4f077 | |
|
826d78d19a | |
|
c1cda2bdfd | |
|
683f74060f | |
|
5e314842d7 | |
|
5aefdb004f | |
|
efae039f06 | |
|
bd9e5d0f8a | |
|
d42936810a | |
|
887e4c4ff0 | |
|
33da09818c | |
|
c21afc0219 | |
|
42493fdef1 | |
|
d0034653fe | |
|
aa68b96c95 | |
|
fae2b51728 | |
|
28ceeeab7b | |
|
460fffe685 | |
|
d032bfcba0 | |
|
5078ca8c7e | |
|
c18dcbd2e1 | |
|
98c3f03d95 | |
|
6f2dd86f24 | |
|
fc54091d28 | |
|
8d2c08c312 | |
|
ad3574dd8f | |
|
f2b12a0485 | |
|
8bd3fbe708 | |
|
42317c0ecf | |
|
bf253ebc5c | |
|
2520f7f67b | |
|
108e10d436 | |
|
26700d5a11 | |
|
5ebc32f4bc | |
|
b11127027b | |
|
8d659aaf3f | |
|
aea03ede2d | |
|
91acd729aa | |
|
dedea93b7f | |
|
cec7812fc5 | |
|
fc93d4f6b9 | |
|
0344d8e6ae | |
|
330cf3aadd | |
|
5290b86d1b | |
|
3aef1b4bcd | |
|
f8d08a33ee | |
|
11409238b4 | |
|
b42c0df1ed | |
|
fcfa0c8c42 | |
|
9f6b87446e | |
|
86652300fe | |
|
55564ca78a | |
|
0e0f4da2fe | |
|
c3daef30d4 | |
|
d849b9fc1d | |
|
15c4e28d0e | |
|
516b85487d | |
|
e9a6589bea | |
|
d0176be34a | |
|
421aca015d | |
|
6c597f6f57 | |
|
b3d80b27c7 | |
|
d36d18300f | |
|
1bbbcda029 | |
|
03a9bfe104 | |
|
5601849931 | |
|
68242a621b | |
|
f0e9a2df17 | |
|
8dbe553c4e | |
|
4399cbc02c | |
|
3a33fddddc | |
|
e6aaec0ca7 | |
|
673e0d3e2d | |
|
a8c0d32db1 | |
|
9a8dbe035d | |
|
9e734f8cbe | |
|
d2a4a4b850 | |
|
be667369d7 | |
|
0df4e52cff | |
|
6cc722347d | |
|
2c92e85546 | |
|
b9fbe526fe | |
|
3b4d89f891 | |
|
0bf2eb1081 | |
|
567c0ddb70 | |
|
f36c87283c | |
|
282022b6b5 | |
|
cf5f9136c3 | |
|
6b88ff2a1e | |
|
8ee1f29e37 | |
|
9e66c21910 | |
|
4eb164e3dd | |
|
3aa689a819 | |
|
c13f7733b8 | |
|
ffac142428 | |
|
a5ff0175db | |
|
f37393ef0c | |
|
7736d86a1f | |
|
9c59a5d246 |
|
@ -1,78 +1,76 @@
|
|||
* @deepthi
|
||||
bootstrap.sh @deepthi @frouioui @vmg
|
||||
go.mod @deepthi @harshit-gangal @mattlord @rohit-nayak-ps @systay @frouioui
|
||||
go.sum @deepthi @harshit-gangal @mattlord @rohit-nayak-ps @systay @frouioui
|
||||
/.github/ @deepthi @mattlord @rohit-nayak-ps @frouioui
|
||||
/.github/ISSUE_TEMPLATE/ @deepthi @frouioui @mattlord
|
||||
/.github/workflows/ @deepthi @frouioui @mattlord @rohit-nayak-ps
|
||||
/config/mycnf/ @deepthi @shlomi-noach @mattlord
|
||||
/doc/ @deepthi @frouioui @GuptaManan100
|
||||
/docker/ @deepthi @derekperkins @mattlord @GuptaManan100 @frouioui
|
||||
bootstrap.sh @frouioui
|
||||
go.mod @harshit-gangal @mattlord @rohit-nayak-ps @systay @frouioui
|
||||
go.sum @harshit-gangal @mattlord @rohit-nayak-ps @systay @frouioui
|
||||
/.github/ @mattlord @rohit-nayak-ps @frouioui
|
||||
/.github/ISSUE_TEMPLATE/ @frouioui @mattlord
|
||||
/.github/workflows/ @frouioui @mattlord @rohit-nayak-ps
|
||||
/config/mycnf/ @shlomi-noach @mattlord
|
||||
/doc/ @frouioui @GuptaManan100
|
||||
/docker/ @derekperkins @mattlord @GuptaManan100 @frouioui
|
||||
/examples/compose @shlomi-noach @GuptaManan100 @frouioui
|
||||
/examples/demo @mattlord @rohit-nayak-ps
|
||||
/examples/local @rohit-nayak-ps @frouioui @mattlord @GuptaManan100
|
||||
/examples/operator @GuptaManan100 @frouioui @mattlord
|
||||
/examples/region_sharding @deepthi @mattlord
|
||||
/examples/region_sharding @mattlord
|
||||
/java/ @harshit-gangal
|
||||
/go/cache @vmg
|
||||
/go/cmd @deepthi @mattlord
|
||||
/go/cmd @mattlord
|
||||
/go/cmd/vtadmin @notfelineit
|
||||
/go/cmd/vtctldclient @mattlord @notfelineit
|
||||
/go/cmd/vtctldclient/command/throttler.go @shlomi-noach @mattlord
|
||||
/go/cmd/vtctldclient/command/vreplication @mattlord @rohit-nayak-ps @shlomi-noach @notfelineit
|
||||
/go/cmd/vtctldclient/command/backups.go @frouioui @mattlord
|
||||
/go/cmd/vtbackup @frouioui @deepthi
|
||||
/go/cmd/vtbackup @frouioui
|
||||
/go/internal/flag @rohit-nayak-ps
|
||||
/go/mysql @harshit-gangal @systay @mattlord
|
||||
/go/pools @deepthi @harshit-gangal
|
||||
/go/protoutil @deepthi @mattlord
|
||||
/go/sqltypes @harshit-gangal @shlomi-noach @vmg
|
||||
/go/pools @harshit-gangal
|
||||
/go/protoutil @mattlord
|
||||
/go/sqltypes @harshit-gangal @shlomi-noach
|
||||
/go/test/endtoend/onlineddl @rohit-nayak-ps @shlomi-noach
|
||||
/go/test/endtoend/messaging @mattlord @rohit-nayak-ps @derekperkins
|
||||
/go/test/endtoend/schemadiff @shlomi-noach @mattlord
|
||||
/go/test/endtoend/transaction @harshit-gangal @systay @frouioui @GuptaManan100
|
||||
/go/test/endtoend/*throttler* @shlomi-noach @mattlord @timvaillancourt
|
||||
/go/test/endtoend/vtgate @harshit-gangal @systay @frouioui
|
||||
/go/test/endtoend/vtorc @deepthi @shlomi-noach @GuptaManan100 @timvaillancourt
|
||||
/go/test/endtoend/vtorc @shlomi-noach @GuptaManan100 @timvaillancourt
|
||||
/go/tools/ @frouioui @systay
|
||||
/go/vt/dbconnpool @harshit-gangal @mattlord
|
||||
/go/vt/discovery @deepthi @frouioui
|
||||
/go/vt/discovery @frouioui
|
||||
/go/vt/discovery/*tablet_picker* @rohit-nayak-ps @mattlord
|
||||
/go/vt/mysqlctl @deepthi @mattlord @frouioui
|
||||
/go/vt/proto @deepthi @harshit-gangal @mattlord
|
||||
/go/vt/mysqlctl @mattlord @frouioui
|
||||
/go/vt/proto @harshit-gangal @mattlord
|
||||
/go/vt/proto/vtadmin @notfelineit
|
||||
/go/vt/schema @mattlord @shlomi-noach
|
||||
/go/vt/servenv @deepthi @dbussink
|
||||
/go/vt/servenv @dbussink
|
||||
/go/vt/schemadiff @shlomi-noach @mattlord
|
||||
/go/vt/sqlparser @harshit-gangal @systay @GuptaManan100
|
||||
/go/vt/srvtopo @deepthi @mattlord
|
||||
/go/vt/srvtopo @mattlord
|
||||
/go/vt/sysvars @harshit-gangal @systay
|
||||
/go/vt/topo @deepthi @mattlord
|
||||
/go/vt/topotools @deepthi @mattlord
|
||||
/go/vt/topo @mattlord
|
||||
/go/vt/topotools @mattlord
|
||||
/go/vt/vitessdriver @harshit-gangal
|
||||
/go/vt/vtadmin @notfelineit @rohit-nayak-ps
|
||||
/go/vt/vtctl @deepthi @rohit-nayak-ps
|
||||
/go/vt/vtctl @rohit-nayak-ps
|
||||
/go/vt/vtctl/vtctl.go @notfelineit @rohit-nayak-ps
|
||||
/go/vt/vtctl/grpcvtctldclient @notfelineit @mattlord
|
||||
/go/vt/vtctl/grpcvtctldserver @notfelineit @mattlord
|
||||
/go/vt/vtctl/reparentutil @GuptaManan100 @deepthi
|
||||
/go/vt/vtctl/reparentutil @GuptaManan100
|
||||
/go/vt/vtctl/vtctldclient @notfelineit @mattlord
|
||||
/go/vt/vtctld @deepthi @notfelineit @rohit-nayak-ps @mattlord
|
||||
/go/vt/vtctld @notfelineit @rohit-nayak-ps @mattlord
|
||||
/go/vt/vterrors @harshit-gangal @systay @frouioui
|
||||
/go/vt/vtexplain @systay @harshit-gangal
|
||||
/go/vt/vtgate @harshit-gangal @systay @frouioui @GuptaManan100
|
||||
/go/vt/vtgate/endtoend/*vstream* @rohit-nayak-ps @mattlord @shlomi-noach @notfelineit
|
||||
/go/vt/vtgate/planbuilder @harshit-gangal @systay @frouioui @GuptaManan100 @arthurschreiber
|
||||
/go/vt/vtgate/*vstream* @rohit-nayak-ps @mattlord @shlomi-noach @notfelineit
|
||||
/go/vt/vtgate/evalengine @dbussink @vmg @systay
|
||||
/go/vt/vtorc @deepthi @shlomi-noach @GuptaManan100 @timvaillancourt
|
||||
/go/vt/vtgate/evalengine @dbussink @systay
|
||||
/go/vt/vtorc @shlomi-noach @GuptaManan100 @timvaillancourt
|
||||
/go/vt/vttablet/*conn* @harshit-gangal @systay
|
||||
/go/vt/vttablet/endtoend @harshit-gangal @mattlord @rohit-nayak-ps @systay
|
||||
/go/vt/vttablet/grpc* @rohit-nayak-ps @shlomi-noach @harshit-gangal
|
||||
/go/vt/vttablet/onlineddl @mattlord @rohit-nayak-ps @shlomi-noach @notfelineit
|
||||
/go/vt/vttablet/queryservice @harshit-gangal @systay
|
||||
/go/vt/vttablet/tabletmanager @deepthi @GuptaManan100 @rohit-nayak-ps @shlomi-noach
|
||||
/go/vt/vttablet/tabletmanager/rpc_backup.go @deepthi @GuptaManan100 @rohit-nayak-ps @shlomi-noach @frouioui
|
||||
/go/vt/vttablet/tabletmanager @GuptaManan100 @rohit-nayak-ps @shlomi-noach
|
||||
/go/vt/vttablet/tabletmanager/rpc_backup.go @GuptaManan100 @rohit-nayak-ps @shlomi-noach @frouioui
|
||||
/go/vt/vttablet/tabletmanager/rpc_throttler.go @shlomi-noach @mattlord @timvaillancourt
|
||||
/go/vt/vttablet/tabletserver/throttle @shlomi-noach @mattlord @timvaillancourt
|
||||
/go/vt/vttablet/tabletmanager/vreplication @rohit-nayak-ps @mattlord @shlomi-noach @notfelineit
|
||||
|
@ -82,13 +80,13 @@ go.sum @deepthi @harshit-gangal @mattlord @rohit-nayak-ps @systay @frouioui
|
|||
/go/vt/vttablet/tabletserver/messager @mattlord @rohit-nayak-ps @derekperkins
|
||||
/go/vt/vttablet/*tmclient* @GuptaManan100 @rohit-nayak-ps @shlomi-noach
|
||||
/go/vt/vttablet/vexec @mattlord @rohit-nayak-ps @shlomi-noach
|
||||
/go/vt/wrangler @deepthi @mattlord @rohit-nayak-ps
|
||||
/go/vt/wrangler @mattlord @rohit-nayak-ps
|
||||
/go/vt/vtctl/workflow @mattlord @rohit-nayak-ps @shlomi-noach @notfelineit
|
||||
/proto/ @deepthi @harshit-gangal
|
||||
/proto/ @harshit-gangal
|
||||
/proto/vtadmin.proto @notfelineit @mattlord
|
||||
/proto/vtctldata.proto @notfelineit @mattlord
|
||||
/proto/vtctlservice.proto @notfelineit @mattlord
|
||||
/test/ @GuptaManan100 @frouioui @rohit-nayak-ps @deepthi @mattlord @harshit-gangal
|
||||
/test/ @GuptaManan100 @frouioui @rohit-nayak-ps @mattlord @harshit-gangal
|
||||
/tools/ @frouioui @rohit-nayak-ps
|
||||
/web/vtadmin @notfelineit
|
||||
/web/vtadmin/src/proto @deepthi @harshit-gangal @mattlord @notfelineit
|
||||
/web/vtadmin/src/proto @harshit-gangal @mattlord @notfelineit
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (onlineddl_vrepl)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (onlineddl_vrepl_stress)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (onlineddl_vrepl_stress_suite)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (onlineddl_vrepl_suite)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (vreplication_basic)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (vreplication_migrate)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -0,0 +1,199 @@
|
|||
# DO NOT MODIFY: THIS FILE IS GENERATED USING "make generate_ci_workflows"
|
||||
|
||||
name: Cluster (vreplication_vdiff2)
|
||||
on: [push, pull_request]
|
||||
concurrency:
|
||||
group: format('{0}-{1}', ${{ github.ref }}, 'Cluster (vreplication_vdiff2)')
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
||||
env:
|
||||
LAUNCHABLE_ORGANIZATION: "vitess"
|
||||
LAUNCHABLE_WORKSPACE: "vitess-app"
|
||||
GITHUB_PR_HEAD_SHA: "${{ github.event.pull_request.head.sha }}"
|
||||
|
||||
jobs:
|
||||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (vreplication_vdiff2)
|
||||
runs-on: ubuntu-24.04
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
run: |
|
||||
if [[ "${{contains( github.event.pull_request.labels.*.name, 'Skip CI')}}" == "true" ]]; then
|
||||
echo "skipping CI due to the 'Skip CI' label"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
- name: Check if workflow needs to be skipped
|
||||
id: skip-workflow
|
||||
run: |
|
||||
skip='false'
|
||||
if [[ "${{github.event.pull_request}}" == "" ]] && [[ "${{github.ref}}" != "refs/heads/main" ]] && [[ ! "${{github.ref}}" =~ ^refs/heads/release-[0-9]+\.[0-9]$ ]] && [[ ! "${{github.ref}}" =~ "refs/tags/.*" ]]; then
|
||||
skip='true'
|
||||
fi
|
||||
echo Skip ${skip}
|
||||
echo "skip-workflow=${skip}" >> $GITHUB_OUTPUT
|
||||
|
||||
PR_DATA=$(curl -s\
|
||||
-H "Authorization: token ${{ secrets.GITHUB_TOKEN }}" \
|
||||
-H "Accept: application/vnd.github.v3+json" \
|
||||
"https://api.github.com/repos/${{ github.repository }}/pulls/${{ github.event.pull_request.number }}")
|
||||
draft=$(echo "$PR_DATA" | jq .draft -r)
|
||||
echo "is_draft=${draft}" >> $GITHUB_OUTPUT
|
||||
|
||||
- name: Check out code
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false'
|
||||
uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2
|
||||
with:
|
||||
persist-credentials: 'false'
|
||||
|
||||
- name: Check for changes in relevant files
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false'
|
||||
uses: dorny/paths-filter@ebc4d7e9ebcb0b1eb21480bb8f43113e996ac77a # v3.0.1
|
||||
id: changes
|
||||
with:
|
||||
token: ''
|
||||
filters: |
|
||||
end_to_end:
|
||||
- 'test/config.json'
|
||||
- 'go/**/*.go'
|
||||
- 'go/vt/sidecardb/**/*.sql'
|
||||
- 'go/test/endtoend/onlineddl/vrepl_suite/**'
|
||||
- 'test.go'
|
||||
- 'Makefile'
|
||||
- 'build.env'
|
||||
- 'go.sum'
|
||||
- 'go.mod'
|
||||
- 'proto/*.proto'
|
||||
- 'tools/**'
|
||||
- 'config/**'
|
||||
- 'bootstrap.sh'
|
||||
- '.github/workflows/cluster_endtoend_vreplication_vdiff2.yml'
|
||||
|
||||
- name: Set up Go
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version-file: go.mod
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-python@39cd14951b08e74b54015e9e001cdefcf80e669f # v5.1.1
|
||||
|
||||
- name: Tune the OS
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
run: |
|
||||
# Limit local port range to not use ports that overlap with server side
|
||||
# ports that we listen on.
|
||||
sudo sysctl -w net.ipv4.ip_local_port_range="22768 65535"
|
||||
# Increase the asynchronous non-blocking I/O. More information at https://dev.mysql.com/doc/refman/5.7/en/innodb-parameters.html#sysvar_innodb_use_native_aio
|
||||
echo "fs.aio-max-nr = 1048576" | sudo tee -a /etc/sysctl.conf
|
||||
sudo sysctl -p /etc/sysctl.conf
|
||||
|
||||
- name: Get dependencies
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
timeout-minutes: 10
|
||||
run: |
|
||||
|
||||
# Get key to latest MySQL repo
|
||||
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys A8D3785C
|
||||
# Setup MySQL 8.0
|
||||
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.33-1_all.deb
|
||||
echo mysql-apt-config mysql-apt-config/select-server select mysql-8.0 | sudo debconf-set-selections
|
||||
sudo DEBIAN_FRONTEND="noninteractive" dpkg -i mysql-apt-config*
|
||||
sudo apt-get -qq update
|
||||
|
||||
# We have to install this old version of libaio1 in case we end up testing with MySQL 5.7. See also:
|
||||
# https://bugs.launchpad.net/ubuntu/+source/libaio/+bug/2067501
|
||||
curl -L -O http://mirrors.kernel.org/ubuntu/pool/main/liba/libaio/libaio1_0.3.112-13build1_amd64.deb
|
||||
sudo dpkg -i libaio1_0.3.112-13build1_amd64.deb
|
||||
# libtinfo5 is also needed for older MySQL 5.7 builds.
|
||||
curl -L -O http://mirrors.kernel.org/ubuntu/pool/universe/n/ncurses/libtinfo5_6.3-2ubuntu0.1_amd64.deb
|
||||
sudo dpkg -i libtinfo5_6.3-2ubuntu0.1_amd64.deb
|
||||
|
||||
# Install everything else we need, and configure
|
||||
sudo apt-get -qq install -y mysql-server mysql-shell mysql-client make unzip g++ etcd-client etcd-server curl git wget eatmydata xz-utils libncurses6
|
||||
|
||||
sudo service mysql stop
|
||||
sudo service etcd stop
|
||||
sudo ln -s /etc/apparmor.d/usr.sbin.mysqld /etc/apparmor.d/disable/
|
||||
sudo apparmor_parser -R /etc/apparmor.d/usr.sbin.mysqld
|
||||
go mod download
|
||||
|
||||
# install JUnit report formatter
|
||||
go install github.com/vitessio/go-junit-report@HEAD
|
||||
|
||||
- name: Setup launchable dependencies
|
||||
if: steps.skip-workflow.outputs.is_draft == 'false' && steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true' && github.base_ref == 'main'
|
||||
run: |
|
||||
# Get Launchable CLI installed. If you can, make it a part of the builder image to speed things up
|
||||
pip3 install --user launchable~=1.0 > /dev/null
|
||||
|
||||
# verify that launchable setup is all correct.
|
||||
launchable verify || true
|
||||
|
||||
# Tell Launchable about the build you are producing and testing
|
||||
launchable record build --name "$GITHUB_RUN_ID" --no-commit-collection --source .
|
||||
|
||||
- name: Run cluster endtoend test
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
timeout-minutes: 45
|
||||
run: |
|
||||
# We set the VTDATAROOT to the /tmp folder to reduce the file path of mysql.sock file
|
||||
# which musn't be more than 107 characters long.
|
||||
export VTDATAROOT="/tmp/"
|
||||
source build.env
|
||||
|
||||
set -exo pipefail
|
||||
|
||||
# Increase our open file descriptor limit as we could hit this
|
||||
ulimit -n 65536
|
||||
cat <<-EOF>>./config/mycnf/mysql8026.cnf
|
||||
innodb_buffer_pool_dump_at_shutdown=OFF
|
||||
innodb_buffer_pool_in_core_file=OFF
|
||||
innodb_buffer_pool_load_at_startup=OFF
|
||||
innodb_buffer_pool_size=64M
|
||||
innodb_doublewrite=OFF
|
||||
innodb_flush_log_at_trx_commit=0
|
||||
innodb_flush_method=O_DIRECT
|
||||
innodb_numa_interleave=ON
|
||||
innodb_adaptive_hash_index=OFF
|
||||
sync_binlog=0
|
||||
sync_relay_log=0
|
||||
performance_schema=OFF
|
||||
slow-query-log=OFF
|
||||
EOF
|
||||
|
||||
cat <<-EOF>>./config/mycnf/mysql8026.cnf
|
||||
binlog-transaction-compression=ON
|
||||
EOF
|
||||
|
||||
cat <<-EOF>>./config/mycnf/mysql8026.cnf
|
||||
binlog-row-value-options=PARTIAL_JSON
|
||||
EOF
|
||||
|
||||
# Some of these tests require specific locales to be installed.
|
||||
# See https://github.com/cncf/automation/commit/49f2ad7a791a62ff7d038002bbb2b1f074eed5d5
|
||||
# run the tests however you normally do, then produce a JUnit XML file
|
||||
eatmydata -- go run test.go -docker=false -follow -shard vreplication_vdiff2 | tee -a output.txt | go-junit-report -set-exit-code > report.xml
|
||||
|
||||
- name: Print test output and Record test result in launchable if PR is not a draft
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true' && always()
|
||||
run: |
|
||||
if [[ "${{steps.skip-workflow.outputs.is_draft}}" == "false" ]]; then
|
||||
# send recorded tests to launchable
|
||||
launchable record tests --build "$GITHUB_RUN_ID" go-test . || true
|
||||
fi
|
||||
|
||||
# print test output
|
||||
cat output.txt
|
||||
|
||||
- name: Test Summary
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true' && always()
|
||||
uses: test-summary/action@31493c76ec9e7aa675f1585d3ed6f1da69269a86 # v2.4
|
||||
with:
|
||||
paths: "report.xml"
|
||||
show: "fail"
|
|
@ -1,9 +1,9 @@
|
|||
# DO NOT MODIFY: THIS FILE IS GENERATED USING "make generate_ci_workflows"
|
||||
|
||||
name: Cluster (vreplication_vtctldclient_vdiff2_movetables_tz)
|
||||
name: Cluster (vreplication_vtctldclient_movetables_tz)
|
||||
on: [push, pull_request]
|
||||
concurrency:
|
||||
group: format('{0}-{1}', ${{ github.ref }}, 'Cluster (vreplication_vtctldclient_vdiff2_movetables_tz)')
|
||||
group: format('{0}-{1}', ${{ github.ref }}, 'Cluster (vreplication_vtctldclient_movetables_tz)')
|
||||
cancel-in-progress: true
|
||||
|
||||
permissions: read-all
|
||||
|
@ -16,8 +16,8 @@ env:
|
|||
jobs:
|
||||
build:
|
||||
timeout-minutes: 60
|
||||
name: Run endtoend tests on Cluster (vreplication_vtctldclient_vdiff2_movetables_tz)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
name: Run endtoend tests on Cluster (vreplication_vtctldclient_movetables_tz)
|
||||
runs-on: ubuntu-24.04
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -71,7 +71,7 @@ jobs:
|
|||
- 'tools/**'
|
||||
- 'config/**'
|
||||
- 'bootstrap.sh'
|
||||
- '.github/workflows/cluster_endtoend_vreplication_vtctldclient_vdiff2_movetables_tz.yml'
|
||||
- '.github/workflows/cluster_endtoend_vreplication_vtctldclient_movetables_tz.yml'
|
||||
|
||||
- name: Set up Go
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
@ -178,7 +178,7 @@ jobs:
|
|||
# Some of these tests require specific locales to be installed.
|
||||
# See https://github.com/cncf/automation/commit/49f2ad7a791a62ff7d038002bbb2b1f074eed5d5
|
||||
# run the tests however you normally do, then produce a JUnit XML file
|
||||
eatmydata -- go run test.go -docker=false -follow -shard vreplication_vtctldclient_vdiff2_movetables_tz | tee -a output.txt | go-junit-report -set-exit-code > report.xml
|
||||
eatmydata -- go run test.go -docker=false -follow -shard vreplication_vtctldclient_movetables_tz | tee -a output.txt | go-junit-report -set-exit-code > report.xml
|
||||
|
||||
- name: Print test output and Record test result in launchable if PR is not a draft
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true' && always()
|
|
@ -16,7 +16,7 @@ permissions: read-all
|
|||
jobs:
|
||||
build_and_push_vttestserver:
|
||||
name: Build and push vttestserver
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
if: github.repository == 'vitessio/vitess'
|
||||
|
||||
strategy:
|
||||
|
@ -136,7 +136,7 @@ jobs:
|
|||
|
||||
build_and_push_components:
|
||||
name: Build and push
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
if: github.repository == 'vitessio/vitess' && needs.build_and_push_lite.result == 'success'
|
||||
needs:
|
||||
- build_and_push_lite
|
||||
|
|
|
@ -5,10 +5,10 @@ jobs:
|
|||
|
||||
build:
|
||||
name: Local example using ${{ matrix.topo }} on Ubuntu
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
strategy:
|
||||
matrix:
|
||||
topo: [consul,etcd,zk2]
|
||||
topo: [etcd,zk2]
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -5,7 +5,7 @@ jobs:
|
|||
|
||||
build:
|
||||
name: Region Sharding example using ${{ matrix.topo }} on Ubuntu
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
strategy:
|
||||
matrix:
|
||||
topo: [etcd]
|
||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
|||
|
||||
build:
|
||||
name: Unit Test (Race)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
steps:
|
||||
- name: Skip CI
|
||||
run: |
|
||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
|||
|
||||
build:
|
||||
name: Unit Test (Evalengine_Race)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
steps:
|
||||
- name: Skip CI
|
||||
run: |
|
||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
|||
pull-requests: write
|
||||
strategy:
|
||||
matrix:
|
||||
branch: [ main, release-21.0, release-20.0 ]
|
||||
branch: [ main, release-22.0, release-21.0, release-20.0 ]
|
||||
name: Update Golang Version
|
||||
runs-on: ubuntu-24.04
|
||||
steps:
|
||||
|
@ -37,9 +37,9 @@ jobs:
|
|||
old_go_version=$(go run ./go/tools/go-upgrade/go-upgrade.go get go-version)
|
||||
echo "old-go-version=${old_go_version}" >> $GITHUB_OUTPUT
|
||||
|
||||
if [ "${{ matrix.branch }}" == "main" ]; then
|
||||
if [[ "${{ matrix.branch }}" == "main" ]]; then
|
||||
go run ./go/tools/go-upgrade/go-upgrade.go upgrade --main --allow-major-upgrade
|
||||
elif [ "${{ matrix.branch }}" == "release-21.0" ]; then
|
||||
elif [[ ("${{ matrix.branch }}" == "release-21.0") || ("${{ matrix.branch }}" == "release-22.0") ]]; then
|
||||
go run ./go/tools/go-upgrade/go-upgrade.go upgrade
|
||||
else
|
||||
go run ./go/tools/go-upgrade/go-upgrade.go upgrade --workflow-update=false
|
||||
|
|
|
@ -13,7 +13,7 @@ jobs:
|
|||
upgrade_downgrade_test_e2e:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Backups - E2E
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -74,7 +74,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -14,7 +14,7 @@ jobs:
|
|||
upgrade_downgrade_test_e2e:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Backups - E2E - Next Release
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
|||
upgrade_downgrade_test_manual:
|
||||
timeout-minutes: 40
|
||||
name: Run Upgrade Downgrade Test - Backups - Manual
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -78,7 +78,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -15,7 +15,7 @@ jobs:
|
|||
upgrade_downgrade_test_manual:
|
||||
timeout-minutes: 40
|
||||
name: Run Upgrade Downgrade Test - Backups - Manual - Next Release
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Online DDL flow
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -86,7 +86,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Query Serving (Queries)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -78,7 +78,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Query Serving (Queries - 2)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -78,7 +78,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Query Serving (Queries - 2) Next Release
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Query Serving (Queries) Next Release
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Query Serving (Schema)
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -78,7 +78,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Query Serving (Schema) Next Release
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Reparent New Vtctl
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Reparent New VTTablet
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Reparent Old Vtctl
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -78,7 +78,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -17,7 +17,7 @@ jobs:
|
|||
upgrade_downgrade_test:
|
||||
timeout-minutes: 60
|
||||
name: Run Upgrade Downgrade Test - Reparent Old VTTablet
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -78,7 +78,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -13,7 +13,7 @@ jobs:
|
|||
upgrade_downgrade_test_e2e:
|
||||
timeout-minutes: 60
|
||||
name: Run Semi Sync Upgrade Downgrade Test
|
||||
runs-on: gh-hosted-runners-16cores-1-24.04
|
||||
runs-on: oracle-vm-16cpu-64gb-x86-64
|
||||
|
||||
steps:
|
||||
- name: Skip CI
|
||||
|
@ -74,7 +74,7 @@ jobs:
|
|||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
uses: actions/setup-go@0a12ed9d6a96ab950c8f026ed9f722fe0da7ef32 # v5.0.2
|
||||
with:
|
||||
go-version: 1.23.7
|
||||
go-version: 1.24.4
|
||||
|
||||
- name: Set up python
|
||||
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
|
||||
|
|
|
@ -93,3 +93,4 @@ report
|
|||
# mise files
|
||||
.mise.toml
|
||||
/errors/
|
||||
go/flags/endtoend/count_flags.sh
|
||||
|
|
|
@ -18,6 +18,60 @@ linters:
|
|||
deny:
|
||||
- pkg: math/rand$
|
||||
desc: Please use math/rand/v2
|
||||
mysql_package_restrictions:
|
||||
list-mode: lax
|
||||
files:
|
||||
- "**/go/mysql/**"
|
||||
- "!**/go/mysql/collations/integration/**"
|
||||
- "!**/go/mysql/collations/tools/**"
|
||||
deny:
|
||||
- pkg: vitess.io/vitess/go/vt/servenv
|
||||
desc: "mysql package should not depend on servenv - this component should be usable as a library without server infrastructure dependencies"
|
||||
- pkg: github.com/spf13/pflag
|
||||
desc: "mysql package should not depend on pflag - this component should be usable as a library with explicit configuration, not global flags"
|
||||
- pkg: vitess.io/vitess/go/vt/dbconfigs
|
||||
desc: "mysql package should not depend on dbconfigs - creates servenv dependency"
|
||||
sqlparser_package_restrictions:
|
||||
list-mode: lax
|
||||
files:
|
||||
- "**/go/vt/sqlparser/**"
|
||||
- "!**/go/vt/sqlparser/goyacc/**"
|
||||
deny:
|
||||
- pkg: github.com/spf13/pflag
|
||||
desc: "sqlparser package should not depend on pflag except in goyacc subpackage - this component should be usable as a library with explicit configuration, not global flags"
|
||||
- pkg: vitess.io/vitess/go/vt/servenv
|
||||
desc: "sqlparser should not depend on servenv - this component should be usable as a library without server infrastructure dependencies"
|
||||
schemadiff_package_restrictions:
|
||||
list-mode: lax
|
||||
files:
|
||||
- "**/go/vt/schemadiff/**"
|
||||
deny:
|
||||
- pkg: github.com/spf13/pflag
|
||||
desc: "schemadiff package should not depend on pflag - this component should be usable as a library with explicit configuration, not global flags"
|
||||
- pkg: vitess.io/vitess/go/vt/servenv
|
||||
desc: "schemadiff should not depend on servenv - this component should be usable as a library without server infrastructure dependencies"
|
||||
collations_package_restrictions:
|
||||
list-mode: lax
|
||||
files:
|
||||
- "**/go/mysql/collations/**"
|
||||
- "!**/go/mysql/collations/integration/**"
|
||||
- "!**/go/mysql/collations/tools/**"
|
||||
deny:
|
||||
- pkg: vitess.io/vitess/go/vt/servenv
|
||||
desc: "collations package should not depend on servenv - this component should be usable as a library without server infrastructure dependencies"
|
||||
- pkg: github.com/spf13/pflag
|
||||
desc: "collations package should not depend on pflag - this component should be usable as a library with explicit configuration, not global flags"
|
||||
vindexes_package_restrictions:
|
||||
list-mode: lax
|
||||
files:
|
||||
- "**/go/vt/vtgate/vindexes/**"
|
||||
deny:
|
||||
- pkg: vitess.io/vitess/go/vt/topotools
|
||||
desc: "vindexes package should not depend on topotools - creates unnecessary dependency tree"
|
||||
- pkg: github.com/spf13/pflag
|
||||
desc: "vindexes package should not depend on pflag - this component should be usable as a library with explicit configuration, not global flags"
|
||||
- pkg: vitess.io/vitess/go/vt/servenv
|
||||
desc: "vindexes should not depend on servenv - this component should be usable as a library without server infrastructure dependencies"
|
||||
errcheck:
|
||||
exclude-functions:
|
||||
- flag.Set
|
||||
|
|
|
@ -4,50 +4,45 @@ The following is the full list, alphabetically ordered.
|
|||
|
||||
* Andres Taylor ([systay](https://github.com/systay)) andres@planetscale.com
|
||||
* Arthur Schreiber ([arthurschreiber](https://github.com/arthurschreiber)) arthurschreiber@github.com
|
||||
* Deepthi Sigireddi ([deepthi](https://github.com/deepthi)) deepthi@planetscale.com
|
||||
* Derek Perkins ([derekperkins](https://github.com/derekperkins)) derek@nozzle.io
|
||||
* Dirkjan Bussink ([dbussink](https://github.com/dbussink)) dbussink@planetscale.com
|
||||
* Florent Poinsard ([frouioui](https://github.com/frouioui)) florent@planetscale.com
|
||||
* Frances Thai ([notfelineit](https://github.com/notfelineit)) frances@planetscale.com
|
||||
* Frances Thai ([notfelineit](https://github.com/notfelineit)) notfelineit@gmail.com
|
||||
* Harshit Gangal ([harshit-gangal](https://github.com/harshit-gangal)) harshit.gangal@gmail.com
|
||||
* Manan Gupta ([GuptaManan100](https://github.com/GuptaManan100)) manan@planetscale.com
|
||||
* Manan Gupta ([GuptaManan100](https://github.com/GuptaManan100)) guptamanan100@gmail.com
|
||||
* Matt Lord ([mattlord](https://github.com/mattlord)) mattalord@gmail.com
|
||||
* Rohit Nayak ([rohit-nayak-ps](https://github.com/rohit-nayak-ps)) rohit@planetscale.com
|
||||
* Shlomi Noach ([shlomi-noach](https://github.com/shlomi-noach)) shlomi@planetscale.com
|
||||
* Tim Vaillancourt ([timvaillancourt](https://github.com/timvaillancourt)) tim@timvaillancourt.com
|
||||
* Vicent Marti ([vmg](https://github.com/vmg)) vmg@planetscale.com
|
||||
|
||||
## Areas of expertise
|
||||
|
||||
### General Vitess
|
||||
deepthi, mattlord, derekperkins
|
||||
mattlord, derekperkins
|
||||
|
||||
### Builds
|
||||
shlomi-noach, vmg, GuptaManan100, frouioui
|
||||
shlomi-noach, GuptaManan100, frouioui
|
||||
|
||||
### Resharding
|
||||
rohit-nayak-ps, deepthi, mattlord
|
||||
rohit-nayak-ps, mattlord
|
||||
|
||||
### Parser
|
||||
systay, harshit-gangal, vmg, GuptaManan100, dbussink
|
||||
|
||||
### Evaluation Engine
|
||||
vmg, dbussink, systay
|
||||
dbussink, systay
|
||||
|
||||
### Planner
|
||||
systay, harshit-gangal, GuptaManan100, frouioui
|
||||
|
||||
### Query Serving
|
||||
systay, harshit-gangal, GuptaManan100, frouioui, vmg, dbussink
|
||||
systay, harshit-gangal, GuptaManan100, frouioui, dbussink
|
||||
|
||||
### Online DDL
|
||||
shlomi-noach, dbussink
|
||||
|
||||
### Performance
|
||||
vmg
|
||||
|
||||
### Cluster Management
|
||||
deepthi, GuptaManan100, dbussink
|
||||
GuptaManan100, dbussink
|
||||
|
||||
### Java
|
||||
harshit-gangal
|
||||
|
@ -70,6 +65,7 @@ We thank the following past maintainers for their contributions.
|
|||
* Anthony Yeh ([enisoc](https://github.com/enisoc))
|
||||
* Dan Kozlowski ([dkhenry](https://github.com/dkhenry))
|
||||
* David Weitzman ([dweitzman](https://github.com/dweitzman))
|
||||
* Deepthi Sigireddi ([deepthi](https://github.com/deepthi))
|
||||
* Jon Tirsen ([tirsen](https://github.com/tirsen))
|
||||
* Leo X. Lin ([leoxlin](https://github.com/leoxlin))
|
||||
* Mali Akmanalp ([makmanalp](https://github.com/makmanalp)
|
||||
|
@ -81,3 +77,4 @@ We thank the following past maintainers for their contributions.
|
|||
* Rafael Chacon ([rafael](https://github.com/rafael))
|
||||
* Sara Bee ([doeg](https://github.com/doeg))
|
||||
* Sugu Sougoumarane ([sougou](https://github.com/sougou))
|
||||
* Vicent Marti ([vmg](https://github.com/vmg))
|
||||
|
|
2
Makefile
2
Makefile
|
@ -286,7 +286,7 @@ $(PROTO_GO_OUTS): minimaltools install_protoc-gen-go proto/*.proto
|
|||
# This rule builds the bootstrap images for all flavors.
|
||||
DOCKER_IMAGES_FOR_TEST = mysql80 mysql84 percona80
|
||||
DOCKER_IMAGES = common $(DOCKER_IMAGES_FOR_TEST)
|
||||
BOOTSTRAP_VERSION=43
|
||||
BOOTSTRAP_VERSION=46
|
||||
ensure_bootstrap_version:
|
||||
find docker/ -type f -exec sed -i "s/^\(ARG bootstrap_version\)=.*/\1=${BOOTSTRAP_VERSION}/" {} \;
|
||||
sed -i 's/\(^.*flag.String(\"bootstrap-version\",\) *\"[^\"]\+\"/\1 \"${BOOTSTRAP_VERSION}\"/' test.go
|
||||
|
|
|
@ -17,7 +17,7 @@
|
|||
source ./tools/shell_functions.inc
|
||||
|
||||
go version >/dev/null 2>&1 || fail "Go is not installed or is not in \$PATH. See https://vitess.io/contributing/build-from-source for install instructions."
|
||||
goversion_min 1.24.1 || echo "Go version reported: `go version`. Version 1.24.1+ recommended. See https://vitess.io/contributing/build-from-source for install instructions."
|
||||
goversion_min 1.24.4 || echo "Go version reported: `go version`. Version 1.24.4+ recommended. See https://vitess.io/contributing/build-from-source for install instructions."
|
||||
|
||||
mkdir -p dist
|
||||
mkdir -p bin
|
||||
|
|
|
@ -0,0 +1,51 @@
|
|||
# Changelog of Vitess v20.0.7
|
||||
|
||||
### Bug fixes
|
||||
#### Backup and Restore
|
||||
* [release-20.0] Fix tablet selection in `vtctld BackupShard` (#18002) [#18024](https://github.com/vitessio/vitess/pull/18024)
|
||||
* Fix backup shard copy paste error [#18099](https://github.com/vitessio/vitess/pull/18099)
|
||||
#### Cluster management
|
||||
* [release-20.0] ValidateKeyspace: Add check for no shards (#18055) [#18062](https://github.com/vitessio/vitess/pull/18062)
|
||||
#### Evalengine
|
||||
* [release-20.0] Implement temporal comparisons (#17826) [#17853](https://github.com/vitessio/vitess/pull/17853)
|
||||
#### Query Serving
|
||||
* backport: support subqueries inside subqueries when merging (Release 20.0) [#17810](https://github.com/vitessio/vitess/pull/17810)
|
||||
* [release-20.0] evalengine: normalize types during compilation (#17887) [#17895](https://github.com/vitessio/vitess/pull/17895)
|
||||
* [release-20.0] Fix DISTINCT on ENUM/SET columns by making enums/set hashable (#17936) [#17990](https://github.com/vitessio/vitess/pull/17990)
|
||||
* [release-20.0] Set proper join vars type for the RHS field query in OLAP (#18028) [#18037](https://github.com/vitessio/vitess/pull/18037)
|
||||
* [release-20.0] Bugfix: Missing data when running vtgate outer joins (#18036) [#18043](https://github.com/vitessio/vitess/pull/18043)
|
||||
* [release-20.0] bugfix: allow window functions when possible to push down (#18103) [#18104](https://github.com/vitessio/vitess/pull/18104)
|
||||
#### VReplication
|
||||
* [release-20.0] VReplication Atomic Copy Workflows: fix bugs around concurrent inserts (#17772) [#17792](https://github.com/vitessio/vitess/pull/17792)
|
||||
* [release-20.0] Multi-tenant workflow SwitchWrites: Don't add denied tables on cancelMigration() (#17782) [#17796](https://github.com/vitessio/vitess/pull/17796)
|
||||
* [release-20.0] VDiff: Fix logic for reconciling extra rows (#17950) [#18071](https://github.com/vitessio/vitess/pull/18071)
|
||||
* [release-20.0] VStream API: Reset stopPos in catchup (#18119) [#18121](https://github.com/vitessio/vitess/pull/18121)
|
||||
#### VTTablet
|
||||
* [release-20.0] fix: race on storing schema engine last changed time (#17914) [#17916](https://github.com/vitessio/vitess/pull/17916)
|
||||
#### vtctldclient
|
||||
* [release-20.0] Filter out tablets with unknown replication lag when electing a new primary (#18004) [#18074](https://github.com/vitessio/vitess/pull/18074)
|
||||
* [release-20.0] Fix `Reshard Cancel` behavior (#18020) [#18079](https://github.com/vitessio/vitess/pull/18079)
|
||||
### CI/Build
|
||||
#### General
|
||||
* [release-20.0] Upgrade the Golang version to `go1.22.12` [#17702](https://github.com/vitessio/vitess/pull/17702)
|
||||
### Performance
|
||||
#### Performance
|
||||
* [release-20.0] smartconnpool: Better handling for idle expiration (#17757) [#17780](https://github.com/vitessio/vitess/pull/17780)
|
||||
#### Query Serving
|
||||
* [release-20.0] pool: reopen connection closed by idle timeout (#17818) [#17830](https://github.com/vitessio/vitess/pull/17830)
|
||||
* [release-20.0] Fix: Separate Lock for Keyspace to Update Controller Mapping in Schema Tracking (#17873) [#17884](https://github.com/vitessio/vitess/pull/17884)
|
||||
### Regression
|
||||
#### Query Serving
|
||||
* [release-20.0] Fix a potential connection pool leak. (#17807) [#17813](https://github.com/vitessio/vitess/pull/17813)
|
||||
#### VTTablet
|
||||
* [release-20.0] fix: App and Dba Pool metrics (#18048) [#18083](https://github.com/vitessio/vitess/pull/18083)
|
||||
### Release
|
||||
#### General
|
||||
* [release-20.0] Bump to `v20.0.7-SNAPSHOT` after the `v20.0.6` release [#17768](https://github.com/vitessio/vitess/pull/17768)
|
||||
### Testing
|
||||
#### Build/CI
|
||||
* [release-20.0] Use release branches for upgrade downgrade tests (#18029) [#18034](https://github.com/vitessio/vitess/pull/18034)
|
||||
#### Query Serving
|
||||
* [release-20.0] [release-21.0] DML test fix for duplicate column value (#17980) [#17987](https://github.com/vitessio/vitess/pull/17987)
|
||||
* [release-20.0] Test: Increase query timeout to fix flaky test 'TestQueryTimeoutWithShardTargeting' (#18016) [#18039](https://github.com/vitessio/vitess/pull/18039)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# Release of Vitess v20.0.7
|
||||
The entire changelog for this release can be found [here](https://github.com/vitessio/vitess/blob/main/changelog/20.0/20.0.7/changelog.md).
|
||||
|
||||
The release includes 27 merged Pull Requests.
|
||||
|
||||
Thanks to all our contributors: @app/vitess-bot, @dbussink, @harshit-gangal, @systay, @vitess-bot
|
||||
|
|
@ -0,0 +1,23 @@
|
|||
# Changelog of Vitess v20.0.8
|
||||
|
||||
### Bug fixes
|
||||
#### Evalengine
|
||||
* [release-20.0] fix: Preserve multi-column TupleExpr in tuple simplifier (#18216) [#18218](https://github.com/vitessio/vitess/pull/18218)
|
||||
* [release-20.0] Fix evalengine crashes on unexpected types (#18254) [#18256](https://github.com/vitessio/vitess/pull/18256)
|
||||
#### Query Serving
|
||||
* [release-20.0] Fix: Ensure Consistent Lookup Vindex Handles Duplicate Rows in Single Query (#17974) [#18077](https://github.com/vitessio/vitess/pull/18077)
|
||||
* [release-20.0] make sure to give MEMBER OF the correct precedence (#18237) [#18243](https://github.com/vitessio/vitess/pull/18243)
|
||||
* [release-20.0] Fix subquery merging regression introduced in #11379 (#18260) [#18261](https://github.com/vitessio/vitess/pull/18261)
|
||||
#### Throttler
|
||||
* [release-20.0] Properly handle grpc dial errors in the throttler metric aggregation (#18073) [#18229](https://github.com/vitessio/vitess/pull/18229)
|
||||
* [release-20.0] Throttler: keep watching topo even on error (#18223) [#18320](https://github.com/vitessio/vitess/pull/18320)
|
||||
#### VReplication
|
||||
* [release-20.0] Atomic Copy: Handle error that was ignored while streaming tables and log it (#18313) [#18314](https://github.com/vitessio/vitess/pull/18314)
|
||||
### Release
|
||||
#### General
|
||||
* [release-20.0] Bump to `v20.0.8-SNAPSHOT` after the `v20.0.7` release [#18147](https://github.com/vitessio/vitess/pull/18147)
|
||||
* [release-20.0] Code Freeze for `v20.0.8` [#18377](https://github.com/vitessio/vitess/pull/18377)
|
||||
### Testing
|
||||
#### Query Serving
|
||||
* [release-20.0] test: TestQueryTimeoutWithShardTargeting fix flaky test (#18242) [#18248](https://github.com/vitessio/vitess/pull/18248)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# Release of Vitess v20.0.8
|
||||
The entire changelog for this release can be found [here](https://github.com/vitessio/vitess/blob/main/changelog/20.0/20.0.8/changelog.md).
|
||||
|
||||
The release includes 11 merged Pull Requests.
|
||||
|
||||
Thanks to all our contributors: @GuptaManan100, @app/vitess-bot, @frouioui
|
||||
|
|
@ -1,4 +1,12 @@
|
|||
## v20.0
|
||||
* **[20.0.8](20.0.8)**
|
||||
* [Changelog](20.0.8/changelog.md)
|
||||
* [Release Notes](20.0.8/release_notes.md)
|
||||
|
||||
* **[20.0.7](20.0.7)**
|
||||
* [Changelog](20.0.7/changelog.md)
|
||||
* [Release Notes](20.0.7/release_notes.md)
|
||||
|
||||
* **[20.0.6](20.0.6)**
|
||||
* [Changelog](20.0.6/changelog.md)
|
||||
* [Release Notes](20.0.6/release_notes.md)
|
||||
|
|
|
@ -0,0 +1,62 @@
|
|||
# Changelog of Vitess v21.0.4
|
||||
|
||||
### Bug fixes
|
||||
#### Backup and Restore
|
||||
* [release-21.0] Fix tablet selection in `vtctld BackupShard` (#18002) [#18025](https://github.com/vitessio/vitess/pull/18025)
|
||||
* Fix backup shard copy paste error [#18100](https://github.com/vitessio/vitess/pull/18100)
|
||||
#### Evalengine
|
||||
* [release-21.0] Implement temporal comparisons (#17826) [#17854](https://github.com/vitessio/vitess/pull/17854)
|
||||
#### Query Serving
|
||||
* [release-21.0] Fail assignment expressions with the correct message (#17752) [#17776](https://github.com/vitessio/vitess/pull/17776)
|
||||
* backport: support subqueries inside subqueries when merging (Release 21.0) [#17811](https://github.com/vitessio/vitess/pull/17811)
|
||||
* [release-21.0] evalengine: normalize types during compilation (#17887) [#17896](https://github.com/vitessio/vitess/pull/17896)
|
||||
* [release-21.0] Fix DISTINCT on ENUM/SET columns by making enums/set hashable (#17936) [#17991](https://github.com/vitessio/vitess/pull/17991)
|
||||
* [release-21.0] go/vt/vtgate: take routing rules into account for traffic mirroring (#17953) [#17994](https://github.com/vitessio/vitess/pull/17994)
|
||||
* [release-21.0] Set proper join vars type for the RHS field query in OLAP (#18028) [#18038](https://github.com/vitessio/vitess/pull/18038)
|
||||
* [release-21.0] Bugfix: Missing data when running vtgate outer joins (#18036) [#18044](https://github.com/vitessio/vitess/pull/18044)
|
||||
* [release-21.0] Fix: Ensure Consistent Lookup Vindex Handles Duplicate Rows in Single Query (#17974) [#18078](https://github.com/vitessio/vitess/pull/18078)
|
||||
* [release-21.0] bugfix: allow window functions when possible to push down (#18103) [#18105](https://github.com/vitessio/vitess/pull/18105)
|
||||
#### VReplication
|
||||
* [release-21.0] VReplication Atomic Copy Workflows: fix bugs around concurrent inserts (#17772) [#17793](https://github.com/vitessio/vitess/pull/17793)
|
||||
* [release-21.0] Multi-tenant workflow SwitchWrites: Don't add denied tables on cancelMigration() (#17782) [#17797](https://github.com/vitessio/vitess/pull/17797)
|
||||
* [release-21.0] VDiff: Fix logic for reconciling extra rows (#17950) [#18072](https://github.com/vitessio/vitess/pull/18072)
|
||||
* [release-21.0] VStream API: Reset stopPos in catchup (#18119) [#18122](https://github.com/vitessio/vitess/pull/18122)
|
||||
#### VTAdmin
|
||||
* [release-21.0] [VTAdmin] Insert into schema cache if exists already and not expired (#17908) [#17924](https://github.com/vitessio/vitess/pull/17924)
|
||||
#### VTCombo
|
||||
* [release-21.0] Fix vtcombo parsing flags incorrectly (#17743) [#17820](https://github.com/vitessio/vitess/pull/17820)
|
||||
#### VTTablet
|
||||
* [release-21.0] fix: race on storing schema engine last changed time (#17914) [#17917](https://github.com/vitessio/vitess/pull/17917)
|
||||
#### vtctldclient
|
||||
* [release-21.0] Filter out tablets with unknown replication lag when electing a new primary (#18004) [#18075](https://github.com/vitessio/vitess/pull/18075)
|
||||
* [release-21.0] Fix `Reshard Cancel` behavior (#18020) [#18080](https://github.com/vitessio/vitess/pull/18080)
|
||||
### CI/Build
|
||||
#### General
|
||||
* [release-21.0] Upgrade the Golang version to `go1.23.6` [#17699](https://github.com/vitessio/vitess/pull/17699)
|
||||
* [release-21.0] Upgrade the Golang version to `go1.23.7` [#17901](https://github.com/vitessio/vitess/pull/17901)
|
||||
* [release-21.0] Upgrade the Golang version to `go1.23.8` [#18092](https://github.com/vitessio/vitess/pull/18092)
|
||||
### Dependencies
|
||||
#### Build/CI
|
||||
* [release-21.0] Bump golang.org/x/net from 0.34.0 to 0.36.0 (#17958) [#17960](https://github.com/vitessio/vitess/pull/17960)
|
||||
### Performance
|
||||
#### Performance
|
||||
* [release-21.0] smartconnpool: Better handling for idle expiration (#17757) [#17781](https://github.com/vitessio/vitess/pull/17781)
|
||||
#### Query Serving
|
||||
* [release-21.0] pool: reopen connection closed by idle timeout (#17818) [#17829](https://github.com/vitessio/vitess/pull/17829)
|
||||
* [release-21.0] Fix: Separate Lock for Keyspace to Update Controller Mapping in Schema Tracking (#17873) [#17885](https://github.com/vitessio/vitess/pull/17885)
|
||||
### Regression
|
||||
#### Query Serving
|
||||
* [release-21.0] Fix a potential connection pool leak. (#17807) [#17814](https://github.com/vitessio/vitess/pull/17814)
|
||||
#### VTTablet
|
||||
* [release-21.0] fix: App and Dba Pool metrics (#18048) [#18084](https://github.com/vitessio/vitess/pull/18084)
|
||||
### Release
|
||||
#### General
|
||||
* [release-21.0] Bump to `v21.0.4-SNAPSHOT` after the `v21.0.3` release [#17766](https://github.com/vitessio/vitess/pull/17766)
|
||||
* [release-21.0] Code Freeze for `v21.0.4` [#18135](https://github.com/vitessio/vitess/pull/18135)
|
||||
### Testing
|
||||
#### Build/CI
|
||||
* [release-21.0] Use release branches for upgrade downgrade tests (#18029) [#18035](https://github.com/vitessio/vitess/pull/18035)
|
||||
#### Query Serving
|
||||
* [release-21.0] DML test fix for duplicate column value [#17980](https://github.com/vitessio/vitess/pull/17980)
|
||||
* [release-21.0] Test: Increase query timeout to fix flaky test 'TestQueryTimeoutWithShardTargeting' (#18016) [#18040](https://github.com/vitessio/vitess/pull/18040)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# Release of Vitess v21.0.4
|
||||
The entire changelog for this release can be found [here](https://github.com/vitessio/vitess/blob/main/changelog/21.0/21.0.4/changelog.md).
|
||||
|
||||
The release includes 35 merged Pull Requests.
|
||||
|
||||
Thanks to all our contributors: @app/vitess-bot, @dbussink, @frouioui, @harshit-gangal, @mattlord, @systay, @vitess-bot
|
||||
|
|
@ -0,0 +1,30 @@
|
|||
# Changelog of Vitess v21.0.5
|
||||
|
||||
### Bug fixes
|
||||
#### Evalengine
|
||||
* [release-21.0] fix: Preserve multi-column TupleExpr in tuple simplifier (#18216) [#18219](https://github.com/vitessio/vitess/pull/18219)
|
||||
* [release-21.0] Fix evalengine crashes on unexpected types (#18254) [#18257](https://github.com/vitessio/vitess/pull/18257)
|
||||
#### Query Serving
|
||||
* [release-21.0] make sure to give MEMBER OF the correct precedence (#18237) [#18244](https://github.com/vitessio/vitess/pull/18244)
|
||||
* [release-21.0] Fix subquery merging regression introduced in #11379 (#18260) [#18262](https://github.com/vitessio/vitess/pull/18262)
|
||||
* [release-21.0] fix: keep LIMIT/OFFSET even when merging UNION queries (#18361) [#18362](https://github.com/vitessio/vitess/pull/18362)
|
||||
#### Throttler
|
||||
* [release-21.0] Throttler: keep watching topo even on error (#18223) [#18321](https://github.com/vitessio/vitess/pull/18321)
|
||||
#### VReplication
|
||||
* [release-21.0] Atomic Copy: Handle error that was ignored while streaming tables and log it (#18313) [#18315](https://github.com/vitessio/vitess/pull/18315)
|
||||
### CI/Build
|
||||
#### General
|
||||
* [release-21.0] Upgrade the Golang version to `go1.23.10` [#18328](https://github.com/vitessio/vitess/pull/18328)
|
||||
### Dependencies
|
||||
#### General
|
||||
* [release-21.0] Bump golang.org/x/net from 0.36.0 to 0.38.0 (#18177) [#18188](https://github.com/vitessio/vitess/pull/18188)
|
||||
### Release
|
||||
#### General
|
||||
* [release-21.0] Bump to `v21.0.5-SNAPSHOT` after the `v21.0.4` release [#18145](https://github.com/vitessio/vitess/pull/18145)
|
||||
* [release-21.0] Code Freeze for `v21.0.5` [#18372](https://github.com/vitessio/vitess/pull/18372)
|
||||
### Testing
|
||||
#### Query Serving
|
||||
* Skip end-to-end test [#18166](https://github.com/vitessio/vitess/pull/18166)
|
||||
* [release-21.0] json array insert test [#18194](https://github.com/vitessio/vitess/pull/18194)
|
||||
* [release-21.0] test: TestQueryTimeoutWithShardTargeting fix flaky test (#18242) [#18249](https://github.com/vitessio/vitess/pull/18249)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# Release of Vitess v21.0.5
|
||||
The entire changelog for this release can be found [here](https://github.com/vitessio/vitess/blob/main/changelog/21.0/21.0.5/changelog.md).
|
||||
|
||||
The release includes 14 merged Pull Requests.
|
||||
|
||||
Thanks to all our contributors: @GuptaManan100, @app/vitess-bot, @frouioui, @harshit-gangal, @systay, @vitess-bot
|
||||
|
|
@ -1,4 +1,12 @@
|
|||
## v21.0
|
||||
* **[21.0.5](21.0.5)**
|
||||
* [Changelog](21.0.5/changelog.md)
|
||||
* [Release Notes](21.0.5/release_notes.md)
|
||||
|
||||
* **[21.0.4](21.0.4)**
|
||||
* [Changelog](21.0.4/changelog.md)
|
||||
* [Release Notes](21.0.4/release_notes.md)
|
||||
|
||||
* **[21.0.3](21.0.3)**
|
||||
* [Changelog](21.0.3/changelog.md)
|
||||
* [Release Notes](21.0.3/release_notes.md)
|
||||
|
|
|
@ -0,0 +1,603 @@
|
|||
# Changelog of Vitess v22.0.0
|
||||
|
||||
### Bug fixes
|
||||
#### ACL
|
||||
* Don't exit tablet server on reloading invalid ACL [#17485](https://github.com/vitessio/vitess/pull/17485)
|
||||
#### Backup and Restore
|
||||
* fix releasing the global read lock when mysqlshell backup fails [#17000](https://github.com/vitessio/vitess/pull/17000)
|
||||
* Fix how we cancel the context in the builtin backup engine [#17285](https://github.com/vitessio/vitess/pull/17285)
|
||||
* Replace uses of os.Create with os2.Create within backup/restore workflows [#17648](https://github.com/vitessio/vitess/pull/17648)
|
||||
* Fix tablet selection in `vtctld BackupShard` [#18002](https://github.com/vitessio/vitess/pull/18002)
|
||||
#### Build/CI
|
||||
* Fix typos in MySQL 8.4 Dockerfile [#17601](https://github.com/vitessio/vitess/pull/17601)
|
||||
* Fix golang dependencies upgrade workflow [#17692](https://github.com/vitessio/vitess/pull/17692)
|
||||
#### CLI
|
||||
* Fix config file not found handling [#17578](https://github.com/vitessio/vitess/pull/17578)
|
||||
#### Cluster management
|
||||
* Fix Errant GTID detection logic in `SetReplicationSource` [#17031](https://github.com/vitessio/vitess/pull/17031)
|
||||
* Fix panic in vttablet when closing topo server twice [#17094](https://github.com/vitessio/vitess/pull/17094)
|
||||
* Fixes for avoidance of hosts taking backup in PRS & ERS [#17300](https://github.com/vitessio/vitess/pull/17300)
|
||||
* Clear `demotePrimaryStalled` field after the function ends [#17823](https://github.com/vitessio/vitess/pull/17823)
|
||||
* fix: fix incorrect nil return value [#17881](https://github.com/vitessio/vitess/pull/17881)
|
||||
* Fix semi-sync monitor bug of expecting incorrect number of fields [#17939](https://github.com/vitessio/vitess/pull/17939)
|
||||
* ValidateKeyspace: Add check for no shards [#18055](https://github.com/vitessio/vitess/pull/18055)
|
||||
* [release-22.0] Add code to clear orphaned files for a deleted keyspace (#18098) [#18115](https://github.com/vitessio/vitess/pull/18115)
|
||||
#### Evalengine
|
||||
* Fix week number for date_format evalengine function [#17432](https://github.com/vitessio/vitess/pull/17432)
|
||||
* [release-20.0] Fix week number for date_format evalengine function (#17432) [#17453](https://github.com/vitessio/vitess/pull/17453)
|
||||
* [release-19.0] Fix week number for date_format evalengine function (#17432) [#17454](https://github.com/vitessio/vitess/pull/17454)
|
||||
* Implement temporal comparisons [#17826](https://github.com/vitessio/vitess/pull/17826)
|
||||
#### Java
|
||||
* Use proper `groupId` for mysql connector in java [#17540](https://github.com/vitessio/vitess/pull/17540)
|
||||
#### Online DDL
|
||||
* Online DDL: fix defer function, potential connection pool exhaustion [#17207](https://github.com/vitessio/vitess/pull/17207)
|
||||
* Propagate CallerID through vtctld OnlineDDL RPCs [#17935](https://github.com/vitessio/vitess/pull/17935)
|
||||
#### Query Serving
|
||||
* fix issue with json unmarshalling of operators with space in them [#16905](https://github.com/vitessio/vitess/pull/16905)
|
||||
* VTGate MoveTables Buffering: Fix panic when buffering is disabled [#16922](https://github.com/vitessio/vitess/pull/16922)
|
||||
* fixes bugs around expression precedence and LIKE [#16934](https://github.com/vitessio/vitess/pull/16934)
|
||||
* Fix `GetUnresolvedTransactions` command for Vtctld [#16961](https://github.com/vitessio/vitess/pull/16961)
|
||||
* bugfix: add HAVING columns inside derived tables [#16976](https://github.com/vitessio/vitess/pull/16976)
|
||||
* Handle encoding binary data separately [#16988](https://github.com/vitessio/vitess/pull/16988)
|
||||
* bugfix: treat EXPLAIN like SELECT [#17054](https://github.com/vitessio/vitess/pull/17054)
|
||||
* Fix: Update found rows pool transaction capacity dynamically via vttablet debug/env [#17055](https://github.com/vitessio/vitess/pull/17055)
|
||||
* Delegate Column Availability Checks to MySQL for Single-Route Queries [#17077](https://github.com/vitessio/vitess/pull/17077)
|
||||
* bugfix: Handle CTEs with columns named in the CTE def [#17179](https://github.com/vitessio/vitess/pull/17179)
|
||||
* Use proper keyspace when updating the query graph of a reference DML [#17226](https://github.com/vitessio/vitess/pull/17226)
|
||||
* Reference Table DML Join Fix [#17414](https://github.com/vitessio/vitess/pull/17414)
|
||||
* Fix Data race in semi-join [#17417](https://github.com/vitessio/vitess/pull/17417)
|
||||
* vexplain to protect the log fields from concurrent writes [#17460](https://github.com/vitessio/vitess/pull/17460)
|
||||
* Fix crash in the evalengine [#17487](https://github.com/vitessio/vitess/pull/17487)
|
||||
* Fix how we generate the query serving error documentation [#17516](https://github.com/vitessio/vitess/pull/17516)
|
||||
* fix: add missing MySQL 8.4 keywords [#17538](https://github.com/vitessio/vitess/pull/17538)
|
||||
* Always return a valid timezone in cursor [#17546](https://github.com/vitessio/vitess/pull/17546)
|
||||
* sizegen: do not ignore type aliases [#17556](https://github.com/vitessio/vitess/pull/17556)
|
||||
* `sendBinlogDumpCommand`: apply BinlogThroughGTID flag [#17580](https://github.com/vitessio/vitess/pull/17580)
|
||||
* `parseComBinlogDumpGTID`: GTID payload is always 5.6 flavor [#17605](https://github.com/vitessio/vitess/pull/17605)
|
||||
* Fix panic inside schema tracker [#17659](https://github.com/vitessio/vitess/pull/17659)
|
||||
* smartconnpool: do not allow connections to starve [#17675](https://github.com/vitessio/vitess/pull/17675)
|
||||
* Fail assignment expressions with the correct message [#17752](https://github.com/vitessio/vitess/pull/17752)
|
||||
* bugfix: support subqueries inside subqueries when merging [#17764](https://github.com/vitessio/vitess/pull/17764)
|
||||
* evalengine: normalize types during compilation [#17887](https://github.com/vitessio/vitess/pull/17887)
|
||||
* Fix DISTINCT on ENUM/SET columns by making enums/set hashable [#17936](https://github.com/vitessio/vitess/pull/17936)
|
||||
* go/vt/vtgate: take routing rules into account for traffic mirroring [#17953](https://github.com/vitessio/vitess/pull/17953)
|
||||
* Fix TEXT and BLOB column types not supporting length parameter in CREATE TABLE [#17973](https://github.com/vitessio/vitess/pull/17973)
|
||||
* Fix: Ensure Consistent Lookup Vindex Handles Duplicate Rows in Single Query [#17974](https://github.com/vitessio/vitess/pull/17974)
|
||||
* Set proper join vars type for the RHS field query in OLAP [#18028](https://github.com/vitessio/vitess/pull/18028)
|
||||
* Bugfix: Missing data when running vtgate outer joins [#18036](https://github.com/vitessio/vitess/pull/18036)
|
||||
* Fix `SHOW VITESS_SHARDS` bug that led to incomplete output [#18069](https://github.com/vitessio/vitess/pull/18069)
|
||||
* [release-22.0] bugfix: allow window functions when possible to push down (#18103) [#18106](https://github.com/vitessio/vitess/pull/18106)
|
||||
* [release-22.0] Fix: Add tablet type to the plan key (#18155) [#18156](https://github.com/vitessio/vitess/pull/18156)
|
||||
* [release-22.0] Fix split statement for create procedure to account for definers (#18142) [#18158](https://github.com/vitessio/vitess/pull/18158)
|
||||
* [release-22.0] bugfix: INSERT IGNORE not inserting rows (#18151) [#18165](https://github.com/vitessio/vitess/pull/18165)
|
||||
#### Schema Tracker
|
||||
* `engine.Reload()`: fix file size aggregation for partitioned tables [#18058](https://github.com/vitessio/vitess/pull/18058)
|
||||
#### Topology
|
||||
* Close zookeeper topo connection on disconnect [#17136](https://github.com/vitessio/vitess/pull/17136)
|
||||
* Limit rare race condition in `topo.Server` [#17165](https://github.com/vitessio/vitess/pull/17165)
|
||||
#### VReplication
|
||||
* VReplication: Support reversing read-only traffic in vtctldclient [#16920](https://github.com/vitessio/vitess/pull/16920)
|
||||
* fix: Infinite logs in case of non-existent stream logs [#17004](https://github.com/vitessio/vitess/pull/17004)
|
||||
* Use proper zstd decoder pool for binlog event compression handling [#17042](https://github.com/vitessio/vitess/pull/17042)
|
||||
* VReplication: Fixes for generated column handling [#17107](https://github.com/vitessio/vitess/pull/17107)
|
||||
* VReplication: Qualify and SQL escape tables in created AutoIncrement VSchema definitions [#17174](https://github.com/vitessio/vitess/pull/17174)
|
||||
* VReplication: recover from closed connection [#17249](https://github.com/vitessio/vitess/pull/17249)
|
||||
* LookupVindex: fix CLI to allow creating non-unique lookups with single column [#17301](https://github.com/vitessio/vitess/pull/17301)
|
||||
* SwitchTraffic: use separate context while canceling a migration [#17340](https://github.com/vitessio/vitess/pull/17340)
|
||||
* LookupVindex bug fix: Fix typos from PR 17301 [#17423](https://github.com/vitessio/vitess/pull/17423)
|
||||
* VReplication: Handle --vreplication_experimental_flags options properly for partial images [#17428](https://github.com/vitessio/vitess/pull/17428)
|
||||
* VDiff: Save lastpk value for source and target [#17493](https://github.com/vitessio/vitess/pull/17493)
|
||||
* Tablet picker: Handle the case where a primary tablet is not setup for a shard [#17573](https://github.com/vitessio/vitess/pull/17573)
|
||||
* VReplication: Address SwitchTraffic bugs around replication lag and cancel on error [#17616](https://github.com/vitessio/vitess/pull/17616)
|
||||
* VDiff: fix race when a vdiff resumes on vttablet restart [#17638](https://github.com/vitessio/vitess/pull/17638)
|
||||
* Atomic Copy: Fix panics when the copy phase starts in some clusters [#17717](https://github.com/vitessio/vitess/pull/17717)
|
||||
* VReplication Atomic Copy Workflows: fix bugs around concurrent inserts [#17772](https://github.com/vitessio/vitess/pull/17772)
|
||||
* Multi-tenant workflow SwitchWrites: Don't add denied tables on cancelMigration() [#17782](https://github.com/vitessio/vitess/pull/17782)
|
||||
* VReplication: Align VReplication and VTGate VStream Retry Logic [#17783](https://github.com/vitessio/vitess/pull/17783)
|
||||
* VDiff: Fix logic for reconciling extra rows [#17950](https://github.com/vitessio/vitess/pull/17950)
|
||||
* VDiff: Fix bug with handling tables with no pks but only a unique key. [#17968](https://github.com/vitessio/vitess/pull/17968)
|
||||
* [release-22.0] VStream API: Reset stopPos in catchup (#18119) [#18123](https://github.com/vitessio/vitess/pull/18123)
|
||||
#### VTAdmin
|
||||
* VTAdmin: Support for multiple DataTable accessing same URL [#17036](https://github.com/vitessio/vitess/pull/17036)
|
||||
* fix SchemaCacheConfig.DefaultExpiration [#17609](https://github.com/vitessio/vitess/pull/17609)
|
||||
* [VTAdmin] Insert into schema cache if exists already and not expired [#17908](https://github.com/vitessio/vitess/pull/17908)
|
||||
* vtadmin: allow cluster IDs with underscores by sanitizing resolver scheme [#17962](https://github.com/vitessio/vitess/pull/17962)
|
||||
#### VTCombo
|
||||
* Fix vtcombo parsing flags incorrectly [#17743](https://github.com/vitessio/vitess/pull/17743)
|
||||
#### VTGate
|
||||
* Fix deadlock between health check and topology watcher [#16995](https://github.com/vitessio/vitess/pull/16995)
|
||||
* Increase health check channel buffer [#17821](https://github.com/vitessio/vitess/pull/17821)
|
||||
#### VTTablet
|
||||
* Fix deadlock in messager and health streamer [#17230](https://github.com/vitessio/vitess/pull/17230)
|
||||
* Fix potential deadlock in health streamer [#17261](https://github.com/vitessio/vitess/pull/17261)
|
||||
* fix: race on storing schema engine last changed time [#17914](https://github.com/vitessio/vitess/pull/17914)
|
||||
* Fix data race in Schema Engine [#17921](https://github.com/vitessio/vitess/pull/17921)
|
||||
* Schema Engine Reload: check for file and allocated size columns to be available [#17967](https://github.com/vitessio/vitess/pull/17967)
|
||||
* Allow the use of db credentials when verifying unmanaged tablets config [#17984](https://github.com/vitessio/vitess/pull/17984)
|
||||
#### VTorc
|
||||
* Errant GTID detection fix for VTOrc [#17287](https://github.com/vitessio/vitess/pull/17287)
|
||||
* Use uint64 for binary log file position [#17472](https://github.com/vitessio/vitess/pull/17472)
|
||||
* `vtorc`: improve handling of partial cell topo results [#17718](https://github.com/vitessio/vitess/pull/17718)
|
||||
* Take into account the tablet type not being set while checking for primary tablet mismatch recovery [#18032](https://github.com/vitessio/vitess/pull/18032)
|
||||
#### schema management
|
||||
* `Applyschema` uses `ExecuteMultiFetchAsDba` [#17078](https://github.com/vitessio/vitess/pull/17078)
|
||||
* `schemadiff`: consistent key ordering in table diff [#17141](https://github.com/vitessio/vitess/pull/17141)
|
||||
* schemadiff: skip keys with expressions in Online DDL analysis [#17475](https://github.com/vitessio/vitess/pull/17475)
|
||||
* `schemadiff`: explicit `ALGORITHM=INSTANT` counts as instant-able [#17942](https://github.com/vitessio/vitess/pull/17942)
|
||||
* `schemadiff`: normalize `TEXT(length)` and `BLOB(length)` columns [#18030](https://github.com/vitessio/vitess/pull/18030)
|
||||
#### vtclient
|
||||
* Fix vtclient vtgate missing flags (specifically --grpc_*) [#17800](https://github.com/vitessio/vitess/pull/17800)
|
||||
* Fix how we generate `vtclient` CLI docs [#17897](https://github.com/vitessio/vitess/pull/17897)
|
||||
#### vtctldclient
|
||||
* Fix flag name typo from #16852 [#16921](https://github.com/vitessio/vitess/pull/16921)
|
||||
* Correct WriteTopologyPath args to match help text [#17735](https://github.com/vitessio/vitess/pull/17735)
|
||||
* Filter out tablets with unknown replication lag when electing a new primary [#18004](https://github.com/vitessio/vitess/pull/18004)
|
||||
* Fix `Reshard Cancel` behavior [#18020](https://github.com/vitessio/vitess/pull/18020)
|
||||
* [release-22.0] Fix deadlock in `ValidateKeyspace` (#18114) [#18117](https://github.com/vitessio/vitess/pull/18117)
|
||||
#### vttestserver
|
||||
* vttestserver should only pass a BindAddressGprc if one is passed in [#17457](https://github.com/vitessio/vitess/pull/17457)
|
||||
### CI/Build
|
||||
#### Build/CI
|
||||
* Flakes: Address flakes in TestMoveTables* unit tests [#16942](https://github.com/vitessio/vitess/pull/16942)
|
||||
* CI: Correct etcd and ncurses package names for Ubuntu 24.04 [#16966](https://github.com/vitessio/vitess/pull/16966)
|
||||
* Flakes: Address TestServerStats flakiness [#16991](https://github.com/vitessio/vitess/pull/16991)
|
||||
* Specify Ubuntu 24.04 for all jobs [#17278](https://github.com/vitessio/vitess/pull/17278)
|
||||
* use newer versions of actions in scorecard workflow [#17373](https://github.com/vitessio/vitess/pull/17373)
|
||||
* split upgrade downgrade queries test to 2 CI workflows [#17464](https://github.com/vitessio/vitess/pull/17464)
|
||||
* CI: fix to Online DDL flow test, do not t.Log from within a goroutine [#17496](https://github.com/vitessio/vitess/pull/17496)
|
||||
* Revert using the oracle runners [#18015](https://github.com/vitessio/vitess/pull/18015)
|
||||
#### Cluster management
|
||||
* Fix flakiness in `TestListenerShutdown` [#17024](https://github.com/vitessio/vitess/pull/17024)
|
||||
#### Docker
|
||||
* Build `vttestserver` in GHA and send Slack message on Docker Build failure [#16963](https://github.com/vitessio/vitess/pull/16963)
|
||||
* feat: add mysql 8.4 docker images [#17529](https://github.com/vitessio/vitess/pull/17529)
|
||||
#### General
|
||||
* [main] Upgrade the Golang version to `go1.23.3` [#17199](https://github.com/vitessio/vitess/pull/17199)
|
||||
* [main] Bump go version to 1.23.4 [#17335](https://github.com/vitessio/vitess/pull/17335)
|
||||
* [main] Upgrade the Golang version to `go1.23.5` [#17563](https://github.com/vitessio/vitess/pull/17563)
|
||||
* Add Shlomi & Frances to VReplication CODEOWNERS [#17878](https://github.com/vitessio/vitess/pull/17878)
|
||||
* [main] Upgrade the Golang version to `go1.24.1` [#17902](https://github.com/vitessio/vitess/pull/17902)
|
||||
* Fix `sync` import error in keyspace_shard_discovery.go [#17972](https://github.com/vitessio/vitess/pull/17972)
|
||||
* [release-22.0] Upgrade the Golang version to `go1.24.2` [#18097](https://github.com/vitessio/vitess/pull/18097)
|
||||
#### Query Serving
|
||||
* Flakes: Setup new fake server if it has gone away [#17023](https://github.com/vitessio/vitess/pull/17023)
|
||||
#### Throttler
|
||||
* Fix flakiness in throttler's `TestDormant` [#17940](https://github.com/vitessio/vitess/pull/17940)
|
||||
#### VReplication
|
||||
* VReplication: Restore previous minimal e2e test behavior [#17016](https://github.com/vitessio/vitess/pull/17016)
|
||||
#### VTAdmin
|
||||
* Update to latest Nodejs LTS and NPM [#17606](https://github.com/vitessio/vitess/pull/17606)
|
||||
### Compatibility Bug
|
||||
#### Query Serving
|
||||
* Partially revert the binary encoding logic for safer upgrade [#18200](https://github.com/vitessio/vitess/pull/18200)
|
||||
### Dependencies
|
||||
#### Build/CI
|
||||
* Bump golang.org/x/crypto from 0.29.0 to 0.31.0 [#17376](https://github.com/vitessio/vitess/pull/17376)
|
||||
* Update bundled MySQL version to 8.0.40 [#17552](https://github.com/vitessio/vitess/pull/17552)
|
||||
* Update dependencies manually [#17691](https://github.com/vitessio/vitess/pull/17691)
|
||||
* Update to Go 1.24.0 [#17790](https://github.com/vitessio/vitess/pull/17790)
|
||||
* Bump golang.org/x/net from 0.34.0 to 0.36.0 [#17958](https://github.com/vitessio/vitess/pull/17958)
|
||||
#### General
|
||||
* go mod update [#17227](https://github.com/vitessio/vitess/pull/17227)
|
||||
* Bump golang.org/x/net from 0.31.0 to 0.33.0 [#17416](https://github.com/vitessio/vitess/pull/17416)
|
||||
* CVE Fix: Update glog to v1.2.4 [#17524](https://github.com/vitessio/vitess/pull/17524)
|
||||
* Upgrade the Golang Dependencies [#17695](https://github.com/vitessio/vitess/pull/17695)
|
||||
* Upgrade the Golang Dependencies [#17803](https://github.com/vitessio/vitess/pull/17803)
|
||||
* [release-22.0] Bump golang.org/x/net from 0.37.0 to 0.38.0 (#18177) [#18189](https://github.com/vitessio/vitess/pull/18189)
|
||||
#### Java
|
||||
* Bump commons-io:commons-io from 2.7 to 2.14.0 in /java [#16889](https://github.com/vitessio/vitess/pull/16889)
|
||||
* java package updates for grpc and protobuf and release plugins [#17100](https://github.com/vitessio/vitess/pull/17100)
|
||||
* [Java]: Bump mysql-connector-java version from 8.0.33 to mysql-connector-j 8.4.0 [#17522](https://github.com/vitessio/vitess/pull/17522)
|
||||
* Bump io.netty:netty-handler from 4.1.110.Final to 4.1.118.Final in /java [#17730](https://github.com/vitessio/vitess/pull/17730)
|
||||
#### Operator
|
||||
* Upgrade `sigs.k8s.io/controller-tools` and `KUBE_VERSION` [#17889](https://github.com/vitessio/vitess/pull/17889)
|
||||
#### VTAdmin
|
||||
* VTAdmin: Upgrade msw package to address security vuln [#17108](https://github.com/vitessio/vitess/pull/17108)
|
||||
* Bump nanoid from 3.3.7 to 3.3.8 in /web/vtadmin [#17375](https://github.com/vitessio/vitess/pull/17375)
|
||||
### Documentation
|
||||
#### Documentation
|
||||
* Add missing changelog for PR #16852 [#17002](https://github.com/vitessio/vitess/pull/17002)
|
||||
* [release-22.0] copy edit release notes to prepare for v22 GA (#18186) [#18192](https://github.com/vitessio/vitess/pull/18192)
|
||||
#### General
|
||||
* Reorganize the `v22.0.0` release notes [#18052](https://github.com/vitessio/vitess/pull/18052)
|
||||
#### Governance
|
||||
* Move Andrew Mason to emeritus [#17745](https://github.com/vitessio/vitess/pull/17745)
|
||||
* Get some CLOMonitor checks passing [#17773](https://github.com/vitessio/vitess/pull/17773)
|
||||
* Update email address for mattlord [#17961](https://github.com/vitessio/vitess/pull/17961)
|
||||
#### Query Serving
|
||||
* Update Atomic Distributed Transaction Design [#17005](https://github.com/vitessio/vitess/pull/17005)
|
||||
* [release-22.0] Add summary note change for unsharded `create procedure` support (#18148) [#18157](https://github.com/vitessio/vitess/pull/18157)
|
||||
### Enhancement
|
||||
#### Authn/z
|
||||
* Add support for hashed caching sha2 passwords [#17948](https://github.com/vitessio/vitess/pull/17948)
|
||||
#### Backup and Restore
|
||||
* add S3 minimum part size defined by the user [#17171](https://github.com/vitessio/vitess/pull/17171)
|
||||
* Implement a per-file retry mechanism in the `BuiltinBackupEngine` [#17271](https://github.com/vitessio/vitess/pull/17271)
|
||||
* Fail VTBackup early when replication or MySQL is failing [#17356](https://github.com/vitessio/vitess/pull/17356)
|
||||
* Allow for specifying a specific MySQL shutdown timeout [#17923](https://github.com/vitessio/vitess/pull/17923)
|
||||
#### Build/CI
|
||||
* Change upgrade test to still use the older version of tests [#16937](https://github.com/vitessio/vitess/pull/16937)
|
||||
#### Cluster management
|
||||
* Improve errant GTID detection in ERS to handle more cases. [#16926](https://github.com/vitessio/vitess/pull/16926)
|
||||
* PRS and ERS don't promote replicas taking backups [#16997](https://github.com/vitessio/vitess/pull/16997)
|
||||
* go/vt/mysqlctl: add postflight_mysqld_start and preflight_mysqld_shutdown hooks [#17652](https://github.com/vitessio/vitess/pull/17652)
|
||||
* Add semi-sync monitor to unblock primaries blocked on semi-sync ACKs [#17763](https://github.com/vitessio/vitess/pull/17763)
|
||||
* [Feature]: Sort results of getTablets for consistency in output/readability [#17771](https://github.com/vitessio/vitess/pull/17771)
|
||||
* Change healthcheck to only reload specific keyspace shard tablets [#17872](https://github.com/vitessio/vitess/pull/17872)
|
||||
* Rebuild `SrvKeyspace` and `SrvVSchema` during vtgate init if required [#17915](https://github.com/vitessio/vitess/pull/17915)
|
||||
#### Documentation
|
||||
* CobraDocs: Remove commit hash from docs. Fix issue with workdir replacement [#17392](https://github.com/vitessio/vitess/pull/17392)
|
||||
* Fix `vtbackup` help output [#17892](https://github.com/vitessio/vitess/pull/17892)
|
||||
#### Evalengine
|
||||
* Improved Compatibility Around LAST_INSERT_ID - evalengine [#17409](https://github.com/vitessio/vitess/pull/17409)
|
||||
#### Examples
|
||||
* Added the initial script for the 40x example for backup and restore [#16893](https://github.com/vitessio/vitess/pull/16893)
|
||||
* Feature Request: Change varbinary to varchar in schemas used in examples folder [#17318](https://github.com/vitessio/vitess/pull/17318)
|
||||
#### General
|
||||
* MySQL errors: `ERWrongParamcountToNativeFct` [#16914](https://github.com/vitessio/vitess/pull/16914)
|
||||
* Standardize topo flags to use hyphen-based naming [#17975](https://github.com/vitessio/vitess/pull/17975)
|
||||
#### Observability
|
||||
* Improve vtgate logging for buffering [#17654](https://github.com/vitessio/vitess/pull/17654)
|
||||
* Add more vstream metrics for vstream manager [#17858](https://github.com/vitessio/vitess/pull/17858)
|
||||
#### Online DDL
|
||||
* Online DDL: detect `vreplication` errors via `vreplication_log` history [#16925](https://github.com/vitessio/vitess/pull/16925)
|
||||
* Online DDL: better error messages in cut-over phase [#17052](https://github.com/vitessio/vitess/pull/17052)
|
||||
* Improve Schema Engine's TablesWithSize80 query [#17066](https://github.com/vitessio/vitess/pull/17066)
|
||||
* Online DDL: dynamic cut-over threshold via `ALTER VITESS_MIGRATION ... CUTOVER_THRESHOLD ...` command [#17126](https://github.com/vitessio/vitess/pull/17126)
|
||||
* Online DDL: `--singleton-table` DDL strategy flag [#17169](https://github.com/vitessio/vitess/pull/17169)
|
||||
* Online DDL: `ANALYZE` the shadow table before cut-over [#17201](https://github.com/vitessio/vitess/pull/17201)
|
||||
* Online DDL: publish `vreplication_lag_seconds` from vreplication progress [#17263](https://github.com/vitessio/vitess/pull/17263)
|
||||
* Online DDL `--analyze-table`: use non-local `ANALYZE TABLE` [#17462](https://github.com/vitessio/vitess/pull/17462)
|
||||
* Online DDL forced cut-over: terminate transactions holding metadata locks on table [#17535](https://github.com/vitessio/vitess/pull/17535)
|
||||
* Online DDL: consider UUID throttle ratios in `user_throttle_ratio` [#17850](https://github.com/vitessio/vitess/pull/17850)
|
||||
#### Operator
|
||||
* Update example operator.yaml to support vtgate HPA [#16805](https://github.com/vitessio/vitess/pull/16805)
|
||||
* `operator.yaml`: pass on the `sidecarDbName` when creating a keyspace [#17739](https://github.com/vitessio/vitess/pull/17739)
|
||||
* Use `vtbackup` in scheduled backups [#17869](https://github.com/vitessio/vitess/pull/17869)
|
||||
* Support multiple namespaces with the vitess-operator [#17928](https://github.com/vitessio/vitess/pull/17928)
|
||||
* Add deployment strategy to vtgate in `operator.yaml` [#18063](https://github.com/vitessio/vitess/pull/18063)
|
||||
#### Query Serving
|
||||
* Support settings changes with atomic transactions [#16974](https://github.com/vitessio/vitess/pull/16974)
|
||||
* Fix to prevent stopping buffering prematurely [#17013](https://github.com/vitessio/vitess/pull/17013)
|
||||
* Atomic Transaction `StartCommit` api to return the commit state [#17116](https://github.com/vitessio/vitess/pull/17116)
|
||||
* --consolidator-query-waiter-cap to set the max number of waiter for consolidated query [#17244](https://github.com/vitessio/vitess/pull/17244)
|
||||
* Handle MySQL handler error codes [#17252](https://github.com/vitessio/vitess/pull/17252)
|
||||
* Track shard session affecting change inside the transaction [#17266](https://github.com/vitessio/vitess/pull/17266)
|
||||
* Allow for dynamic configuration of DDL settings [#17328](https://github.com/vitessio/vitess/pull/17328)
|
||||
* Allow dynamic configuration of vschema acl [#17333](https://github.com/vitessio/vitess/pull/17333)
|
||||
* Range Query Optimization (For sequential Vindex types) [#17342](https://github.com/vitessio/vitess/pull/17342)
|
||||
* Add missing tables to globally routed list in schema tracker only if they are not already present in a VSchema [#17371](https://github.com/vitessio/vitess/pull/17371)
|
||||
* Add linearizable support to SQL VSchema management [#17401](https://github.com/vitessio/vitess/pull/17401)
|
||||
* Improved Compatibility Around LAST_INSERT_ID [#17408](https://github.com/vitessio/vitess/pull/17408)
|
||||
* Make transaction mode a dynamic configuration [#17419](https://github.com/vitessio/vitess/pull/17419)
|
||||
* Views: VTGate changes for seamless integration [#17439](https://github.com/vitessio/vitess/pull/17439)
|
||||
* VALUES statement AST and parsing [#17500](https://github.com/vitessio/vitess/pull/17500)
|
||||
* Remove shard targeted keyspace from database qualifier on the query [#17503](https://github.com/vitessio/vitess/pull/17503)
|
||||
* Add support for global routing in describe statement [#17510](https://github.com/vitessio/vitess/pull/17510)
|
||||
* Engine primitive for join-values [#17518](https://github.com/vitessio/vitess/pull/17518)
|
||||
* Improve sizegen to handle more types [#17583](https://github.com/vitessio/vitess/pull/17583)
|
||||
* Views global routing [#17633](https://github.com/vitessio/vitess/pull/17633)
|
||||
* Handle Percona compressed column extension [#17660](https://github.com/vitessio/vitess/pull/17660)
|
||||
* Wrap fatal TX errors in a new `vterrors` code [#17669](https://github.com/vitessio/vitess/pull/17669)
|
||||
* Parse SRID attribute for virtual columns [#17680](https://github.com/vitessio/vitess/pull/17680)
|
||||
* Vtgate metrics: Added plan and query type metrics [#17727](https://github.com/vitessio/vitess/pull/17727)
|
||||
* Add a Visitable interface to support AST nodes declared outside sqlparser [#17875](https://github.com/vitessio/vitess/pull/17875)
|
||||
* Unsharded support for `CREATE PROCEDURE` and `DROP PROCEDURE` statement [#17946](https://github.com/vitessio/vitess/pull/17946)
|
||||
* Ensure DML Queries with Large Input Rows Succeed When Passthrough DML is Enabled [#17949](https://github.com/vitessio/vitess/pull/17949)
|
||||
* Pass through predicates when trying to merge apply join. [#17955](https://github.com/vitessio/vitess/pull/17955)
|
||||
* Planner: Allow Arbitrary Expression Pushdown in UNION Queries [#18000](https://github.com/vitessio/vitess/pull/18000)
|
||||
* Make it possible to use paths with Visitable nodes [#18053](https://github.com/vitessio/vitess/pull/18053)
|
||||
#### Throttler
|
||||
* Tablet throttler: read and use MySQL host metrics [#16904](https://github.com/vitessio/vitess/pull/16904)
|
||||
* Multi-metrics throttler: post v21 deprecations and changes [#16915](https://github.com/vitessio/vitess/pull/16915)
|
||||
* Multi-metrics throttler: adding InnoDB `history_list_length` metric [#17262](https://github.com/vitessio/vitess/pull/17262)
|
||||
#### Topology
|
||||
* Avoid flaky topo concurrency test [#17407](https://github.com/vitessio/vitess/pull/17407)
|
||||
#### VReplication
|
||||
* fix: Avoid creation of workflows with non-empty tables in target keyspace [#16874](https://github.com/vitessio/vitess/pull/16874)
|
||||
* VReplication: Properly support cancel and delete for multi-tenant MoveTables [#16906](https://github.com/vitessio/vitess/pull/16906)
|
||||
* VDiff: Also generate default new UUID in VtctldServer VDiffCreate [#17003](https://github.com/vitessio/vitess/pull/17003)
|
||||
* VReplication: Relax restrictions on Cancel and ReverseTraffic when writes not involved [#17128](https://github.com/vitessio/vitess/pull/17128)
|
||||
* Binlog: Improve ZstdInMemoryDecompressorMaxSize management [#17220](https://github.com/vitessio/vitess/pull/17220)
|
||||
* VReplication: Support for filter using `IN` operator [#17296](https://github.com/vitessio/vitess/pull/17296)
|
||||
* VReplication: Support binlog_row_value_options=PARTIAL_JSON [#17345](https://github.com/vitessio/vitess/pull/17345)
|
||||
* Export `BuildSummary` func for VDiff show [#17413](https://github.com/vitessio/vitess/pull/17413)
|
||||
* VReplication: Improve error handling in VTGate VStreams [#17558](https://github.com/vitessio/vitess/pull/17558)
|
||||
* VReplication Workflow command: Allow stop/start on specific shards [#17581](https://github.com/vitessio/vitess/pull/17581)
|
||||
* VReplication: Support for `BETWEEN`/`NOT BETWEEN` filter in VStream [#17721](https://github.com/vitessio/vitess/pull/17721)
|
||||
* VReplication: Support ignoring the source Keyspace on MoveTables cancel/complete [#17729](https://github.com/vitessio/vitess/pull/17729)
|
||||
* VReplication: Support excluding lagging tablets and use this in vstream manager [#17835](https://github.com/vitessio/vitess/pull/17835)
|
||||
* VStream: Add `IS NULL` filter support [#17848](https://github.com/vitessio/vitess/pull/17848)
|
||||
* VTTablet schema reload: include stats only on periodic reload for all flavors. Default to "base table" query for the "with sizes" query for 5.7 only [#17855](https://github.com/vitessio/vitess/pull/17855)
|
||||
* Refactor vstream_dynamic_packet_size and vstream_packet_size flags to use dashes [#17964](https://github.com/vitessio/vitess/pull/17964)
|
||||
* VReplication Workflows: make defer-secondary-keys true by default [#18006](https://github.com/vitessio/vitess/pull/18006)
|
||||
#### VTAdmin
|
||||
* VTAdmin: Support for Workflow Actions [#16816](https://github.com/vitessio/vitess/pull/16816)
|
||||
* VTAdmin: Support for conclude txn and abandon age param [#16834](https://github.com/vitessio/vitess/pull/16834)
|
||||
* VTAdmin(web): Add refresh compatibility to workflow screen (all tabs) [#16865](https://github.com/vitessio/vitess/pull/16865)
|
||||
* VTAdmin: Add support for Create Reshard [#16903](https://github.com/vitessio/vitess/pull/16903)
|
||||
* VTAdmin: Support for `Materialize` Create [#16941](https://github.com/vitessio/vitess/pull/16941)
|
||||
* VTAdmin: Support for `VDiff` create and show last [#16943](https://github.com/vitessio/vitess/pull/16943)
|
||||
* VTAdmin: Support for schema migrations view/create [#17134](https://github.com/vitessio/vitess/pull/17134)
|
||||
* Add GetTransactionInfo in VTadmin API and page [#17142](https://github.com/vitessio/vitess/pull/17142)
|
||||
* VTAdmin(web): Add simpler topology tree structure [#17245](https://github.com/vitessio/vitess/pull/17245)
|
||||
* vtadmin: enable sorting in all tables [#17468](https://github.com/vitessio/vitess/pull/17468)
|
||||
* VTAdmin to use VTGate's vexplain [#17508](https://github.com/vitessio/vitess/pull/17508)
|
||||
* VTAdmin: Add advanced workflow `switchtraffic` options [#17658](https://github.com/vitessio/vitess/pull/17658)
|
||||
* VTAdmin: update logo and favicon for the new Vitess logos [#17715](https://github.com/vitessio/vitess/pull/17715)
|
||||
* vtadmin: display transaction participant list as comma separated [#17986](https://github.com/vitessio/vitess/pull/17986)
|
||||
#### VTGate
|
||||
* Store the health check subscriber name to improve error message [#17863](https://github.com/vitessio/vitess/pull/17863)
|
||||
#### VTTablet
|
||||
* vttablet debugenv changes [#17161](https://github.com/vitessio/vitess/pull/17161)
|
||||
* Fail loading an ACL config if the provided file is empty and enforceTableACLConfig is true [#17274](https://github.com/vitessio/vitess/pull/17274)
|
||||
* Refactor Disk Stall implementation and mark tablet not serving if disk is stalled [#17624](https://github.com/vitessio/vitess/pull/17624)
|
||||
#### VTorc
|
||||
* Improve efficiency of `vtorc` topo calls [#17071](https://github.com/vitessio/vitess/pull/17071)
|
||||
* `vtorc`: require topo for `Healthy: true` in `/debug/health` [#17129](https://github.com/vitessio/vitess/pull/17129)
|
||||
* `vtorc`: make SQL formatting consistent [#17154](https://github.com/vitessio/vitess/pull/17154)
|
||||
* Fix errant GTID detection in VTOrc to also work with a replica not connected to any primary [#17267](https://github.com/vitessio/vitess/pull/17267)
|
||||
* Add StalledDiskPrimary analysis and recovery to vtorc [#17470](https://github.com/vitessio/vitess/pull/17470)
|
||||
* Use prefix in all vtorc check and recover logs [#17526](https://github.com/vitessio/vitess/pull/17526)
|
||||
* Add stats for shards watched by VTOrc, purge stale shards [#17815](https://github.com/vitessio/vitess/pull/17815)
|
||||
* Add VTOrc recovery for mismatch in tablet type [#17870](https://github.com/vitessio/vitess/pull/17870)
|
||||
* `vtorc`: add tablets watched stats [#17911](https://github.com/vitessio/vitess/pull/17911)
|
||||
* `vtorc`: add stats to shard locks and instance discovery [#17977](https://github.com/vitessio/vitess/pull/17977)
|
||||
#### schema management
|
||||
* Only run sidecardb change detection on serving primary tablets [#17051](https://github.com/vitessio/vitess/pull/17051)
|
||||
* `engine.Reload()`: read InnoDB tables sizes including `FULLTEXT` index volume [#17118](https://github.com/vitessio/vitess/pull/17118)
|
||||
* `schemadiff`: validate uniqueness of `CHECK` and of `FOREIGN KEY` constraints [#17627](https://github.com/vitessio/vitess/pull/17627)
|
||||
* `schemadiff` textual annotation fix + tests [#17630](https://github.com/vitessio/vitess/pull/17630)
|
||||
* Supporting `InnoDBParallelReadThreadsCapability` [#17689](https://github.com/vitessio/vitess/pull/17689)
|
||||
* Ignore execution time errors for schemadiff view analysis [#17704](https://github.com/vitessio/vitess/pull/17704)
|
||||
* schemadiff: `ViewDependencyUnresolvedError` lists missing referenced entities [#17711](https://github.com/vitessio/vitess/pull/17711)
|
||||
#### vtctldclient
|
||||
* Add RPC to read the statements to be executed in an unresolved prepared transaction [#17131](https://github.com/vitessio/vitess/pull/17131)
|
||||
#### vttestserver
|
||||
* Add support for receiving `grpc_bind_adress` on `vttestserver` [#17231](https://github.com/vitessio/vitess/pull/17231)
|
||||
#### web UI
|
||||
* VTAdmin(web): Better visualization for JSON screens [#17459](https://github.com/vitessio/vitess/pull/17459)
|
||||
* VTAdmin: Show Hostname Alongside Tablet ID on tablet selection drop-downs [#17982](https://github.com/vitessio/vitess/pull/17982)
|
||||
### Feature
|
||||
#### Cluster management
|
||||
* Tool to determine mapping from vindex and value to shard [#17290](https://github.com/vitessio/vitess/pull/17290)
|
||||
#### Query Serving
|
||||
* Add savepoint support to atomic distributed transaction [#16863](https://github.com/vitessio/vitess/pull/16863)
|
||||
* feat: add metrics for atomic distributed transactions [#16939](https://github.com/vitessio/vitess/pull/16939)
|
||||
* connection pool: max idle connections implementation [#17443](https://github.com/vitessio/vitess/pull/17443)
|
||||
* [release-22.0] Add a new implementation for handling multiple queries without needing to split them (#18059) [#18139](https://github.com/vitessio/vitess/pull/18139)
|
||||
#### VReplication
|
||||
* LookupVindex: Implement `internalize` command for lookup vindexes [#17429](https://github.com/vitessio/vitess/pull/17429)
|
||||
* VReplication: Support passing VStream filters down to MySQL [#17677](https://github.com/vitessio/vitess/pull/17677)
|
||||
* VReplication SwitchTraffic: for a dry run check if sequences need to be updated [#17842](https://github.com/vitessio/vitess/pull/17842)
|
||||
#### VTGate
|
||||
* Add option to log error queries only [#17554](https://github.com/vitessio/vitess/pull/17554)
|
||||
#### VTTablet
|
||||
* Add a way to know if DemotePrimary is blocked and send it in the health stream [#17289](https://github.com/vitessio/vitess/pull/17289)
|
||||
* Add index and table metrics to vttablet [#17570](https://github.com/vitessio/vitess/pull/17570)
|
||||
#### VTorc
|
||||
* Improve VTOrc config handling to support dynamic variables [#17218](https://github.com/vitessio/vitess/pull/17218)
|
||||
* Support KeyRange in `--clusters_to_watch` flag [#17604](https://github.com/vitessio/vitess/pull/17604)
|
||||
### Internal Cleanup
|
||||
#### ACL
|
||||
* Remove unused code from go/acl [#17741](https://github.com/vitessio/vitess/pull/17741)
|
||||
#### Backup and Restore
|
||||
* Remove binlog-server point in time recoveries code & tests [#17361](https://github.com/vitessio/vitess/pull/17361)
|
||||
#### Build/CI
|
||||
* Add release-21.0 to the Golang Upgrade workflow [#16916](https://github.com/vitessio/vitess/pull/16916)
|
||||
* Change the name of the vitess-tester repository [#16917](https://github.com/vitessio/vitess/pull/16917)
|
||||
* Security improvements to GitHub Actions [#17520](https://github.com/vitessio/vitess/pull/17520)
|
||||
* Rename docker clusters for more clarity and group all java test together [#17542](https://github.com/vitessio/vitess/pull/17542)
|
||||
* Upgrade default etcd version to 3.5.17 [#17653](https://github.com/vitessio/vitess/pull/17653)
|
||||
* test: replace `t.Errorf` and `t.Fatalf` with `assert` and `require` [#17720](https://github.com/vitessio/vitess/pull/17720)
|
||||
* Simply changing GH Actions runner [#17788](https://github.com/vitessio/vitess/pull/17788)
|
||||
* nit: move new `const`s to own section [#17802](https://github.com/vitessio/vitess/pull/17802)
|
||||
* Add support for `GOPRIVATE` in CI templates [#17806](https://github.com/vitessio/vitess/pull/17806)
|
||||
* Allow build git envs to be set in `docker/lite` [#17827](https://github.com/vitessio/vitess/pull/17827)
|
||||
* Set 16 core runners to oci gh arc runners [#17879](https://github.com/vitessio/vitess/pull/17879)
|
||||
* Add @frouioui to CODEOWNERS for backups [#17927](https://github.com/vitessio/vitess/pull/17927)
|
||||
* Migrate all but one of the other jobs to use cncf-hosted gha runners [#17943](https://github.com/vitessio/vitess/pull/17943)
|
||||
* re-replace most runners with the cncf-hosted runners [#17993](https://github.com/vitessio/vitess/pull/17993)
|
||||
#### CLI
|
||||
* Remove deprecated items before `v22.0.0` [#17894](https://github.com/vitessio/vitess/pull/17894)
|
||||
#### Cluster management
|
||||
* Remove legacy way of considering SQL thread being stopped on a replica as unreachable [#17918](https://github.com/vitessio/vitess/pull/17918)
|
||||
#### General
|
||||
* sqltypes: add ToTime conversion funcs [#17178](https://github.com/vitessio/vitess/pull/17178)
|
||||
* Fix integer parsing logic [#17650](https://github.com/vitessio/vitess/pull/17650)
|
||||
* Remove unused code from go/mysql package [#17740](https://github.com/vitessio/vitess/pull/17740)
|
||||
* Remove bits of unused code across various packages [#17785](https://github.com/vitessio/vitess/pull/17785)
|
||||
* sqltypes: move datetime handling to Value method [#17929](https://github.com/vitessio/vitess/pull/17929)
|
||||
* Remove direct usage of archived github.com/pkg/errors (#17933) [#17934](https://github.com/vitessio/vitess/pull/17934)
|
||||
* Update to golangci-lint 2 [#18050](https://github.com/vitessio/vitess/pull/18050)
|
||||
#### Java
|
||||
* Update the how to release java docs [#17603](https://github.com/vitessio/vitess/pull/17603)
|
||||
#### Observability
|
||||
* Remove unused go/stats code [#17742](https://github.com/vitessio/vitess/pull/17742)
|
||||
#### Online DDL
|
||||
* Online DDL: removal of `gh-ost` and `pt-osc` strategies [#17626](https://github.com/vitessio/vitess/pull/17626)
|
||||
#### Query Serving
|
||||
* Parse enum/set values with `sqlparser` [#17133](https://github.com/vitessio/vitess/pull/17133)
|
||||
* Deprecate `twopc_enable` flag and change input type for `twopc_abandon_age` to time.Duration [#17279](https://github.com/vitessio/vitess/pull/17279)
|
||||
* Improve logging in buffering [#17294](https://github.com/vitessio/vitess/pull/17294)
|
||||
* refactor: rename DefaultKeyspace() to CurrentKeyspace() [#17303](https://github.com/vitessio/vitess/pull/17303)
|
||||
* refactor: VTGate executor with a runnable context package [#17305](https://github.com/vitessio/vitess/pull/17305)
|
||||
* Clean up duplicate datetime parsing code [#17582](https://github.com/vitessio/vitess/pull/17582)
|
||||
* Make sure no AST types are bare slices [#17674](https://github.com/vitessio/vitess/pull/17674)
|
||||
* Small planner refactoring [#17851](https://github.com/vitessio/vitess/pull/17851)
|
||||
* Refactor Join Predicate Handling in Planner [#17877](https://github.com/vitessio/vitess/pull/17877)
|
||||
* VTGate: Session in StreamExecute response as default [#17907](https://github.com/vitessio/vitess/pull/17907)
|
||||
* Refactor transitive closure handling [#17978](https://github.com/vitessio/vitess/pull/17978)
|
||||
#### TabletManager
|
||||
* Use non-deprecated flags to skip replication [#17400](https://github.com/vitessio/vitess/pull/17400)
|
||||
* Add forward compatibility for caching_sha2_password and replication [#18033](https://github.com/vitessio/vitess/pull/18033)
|
||||
#### Throttler
|
||||
* throttler: formal gRPC calls in endtoend tests, removing HTTP API calls [#16530](https://github.com/vitessio/vitess/pull/16530)
|
||||
* e2e framework change to find empty throttler config [#17228](https://github.com/vitessio/vitess/pull/17228)
|
||||
* Multi-metrics throttler post v21 cleanup: remove unthrottled entry from topo [#17283](https://github.com/vitessio/vitess/pull/17283)
|
||||
#### VReplication
|
||||
* refac: Remove duplicate `forAllShards` methods from `vt/vtctl/workflow` [#17025](https://github.com/vitessio/vitess/pull/17025)
|
||||
* VDiff: Comment the VDiffCreate proto msg and set reasonable server side defaults [#17026](https://github.com/vitessio/vitess/pull/17026)
|
||||
* refac: Refactor `Server.GetWorkflows()` [#17092](https://github.com/vitessio/vitess/pull/17092)
|
||||
* Refactor `Server.LookupVindexCreate` [#17242](https://github.com/vitessio/vitess/pull/17242)
|
||||
* Remove unused code for old START_GTID logic [#17265](https://github.com/vitessio/vitess/pull/17265)
|
||||
* VDiff: Remove extra % sign in vdiff text report template [#17568](https://github.com/vitessio/vitess/pull/17568)
|
||||
* VReplication: CODEOWNERS and unit test housekeeping [#17646](https://github.com/vitessio/vitess/pull/17646)
|
||||
* Always make sure to escape all strings [#17649](https://github.com/vitessio/vitess/pull/17649)
|
||||
#### VTGate
|
||||
* Change keys of the discovery flags such that they conform to the convention [#17430](https://github.com/vitessio/vitess/pull/17430)
|
||||
#### VTTablet
|
||||
* Remove deprecated `--disable_active_reparents` flag [#17919](https://github.com/vitessio/vitess/pull/17919)
|
||||
#### VTorc
|
||||
* `vtorc`: cleanup init db handling [#17198](https://github.com/vitessio/vitess/pull/17198)
|
||||
* Cleanup legacy MariaDB bits from vtorc [#17415](https://github.com/vitessio/vitess/pull/17415)
|
||||
* Make all durability policy names constants [#17448](https://github.com/vitessio/vitess/pull/17448)
|
||||
* Remove unused code in discovery queue creation [#17515](https://github.com/vitessio/vitess/pull/17515)
|
||||
* `vtorc`: use `golang.org/x/sync/semaphore`, add flag for db concurrency [#17837](https://github.com/vitessio/vitess/pull/17837)
|
||||
* `vtorc`: use `errgroup` in keyspace/shard discovery [#17857](https://github.com/vitessio/vitess/pull/17857)
|
||||
* `vtorc`: add stats for discovery workers [#17937](https://github.com/vitessio/vitess/pull/17937)
|
||||
#### vtctldclient
|
||||
* Move all e2e tests to vtctldclient [#17441](https://github.com/vitessio/vitess/pull/17441)
|
||||
* Add vtctldclient missing cmds and remove remaining vtctl[client] usage in e2e tests [#17442](https://github.com/vitessio/vitess/pull/17442)
|
||||
### Performance
|
||||
#### Backup and Restore
|
||||
* go/stats: improve performance of safeJoinLabels [#16953](https://github.com/vitessio/vitess/pull/16953)
|
||||
#### Performance
|
||||
* `vtorc`: fetch all tablets from cells once + filter during refresh [#17388](https://github.com/vitessio/vitess/pull/17388)
|
||||
* smartconnpool: Better handling for idle expiration [#17757](https://github.com/vitessio/vitess/pull/17757)
|
||||
#### Query Serving
|
||||
* grpc: upgrade to 1.66.2 and use Codec v2 [#16790](https://github.com/vitessio/vitess/pull/16790)
|
||||
* Benchmark Prepared statement and expected Improvement [#17449](https://github.com/vitessio/vitess/pull/17449)
|
||||
* Reduce VTGate Normalizer multiple AST walks [#17619](https://github.com/vitessio/vitess/pull/17619)
|
||||
* Optimise AST rewriting [#17623](https://github.com/vitessio/vitess/pull/17623)
|
||||
* Faster dependency copying [#17708](https://github.com/vitessio/vitess/pull/17708)
|
||||
* Use ast-paths for subquery planning to improve performance [#17738](https://github.com/vitessio/vitess/pull/17738)
|
||||
* Faster Prepared Statement Execution by Using Raw SQL for Caching [#17777](https://github.com/vitessio/vitess/pull/17777)
|
||||
* pool: reopen connection closed by idle timeout [#17818](https://github.com/vitessio/vitess/pull/17818)
|
||||
* Fix: Separate Lock for Keyspace to Update Controller Mapping in Schema Tracking [#17873](https://github.com/vitessio/vitess/pull/17873)
|
||||
* Implement Deferred Optimization for Prepared Statements [#17992](https://github.com/vitessio/vitess/pull/17992)
|
||||
* Only sort when receiving results from multiple shards [#17998](https://github.com/vitessio/vitess/pull/17998)
|
||||
#### Throttler
|
||||
* Throttler: reduce regexp/string allocations by pre-computing pascal case [#17817](https://github.com/vitessio/vitess/pull/17817)
|
||||
#### VReplication
|
||||
* VReplication: Optimize replication on target tablets [#17166](https://github.com/vitessio/vitess/pull/17166)
|
||||
* VStreamer: For larger compressed transaction payloads, stream the internal contents [#17239](https://github.com/vitessio/vitess/pull/17239)
|
||||
* VReplication: Disable /debug/vrlog by default [#17832](https://github.com/vitessio/vitess/pull/17832)
|
||||
#### VTGate
|
||||
* Ensure all topo read calls consider `--topo_read_concurrency` [#17276](https://github.com/vitessio/vitess/pull/17276)
|
||||
#### VTTablet
|
||||
* Skip Field Query for Views During Schema Refresh to Improve Reload Time [#18066](https://github.com/vitessio/vitess/pull/18066)
|
||||
#### VTorc
|
||||
* Move to native sqlite3 queries [#17124](https://github.com/vitessio/vitess/pull/17124)
|
||||
* `vtorc`: cleanup discover queue, add concurrency flag [#17825](https://github.com/vitessio/vitess/pull/17825)
|
||||
* `vtorc`: remove duplicate instance read from backend [#17834](https://github.com/vitessio/vitess/pull/17834)
|
||||
* `vtorc`: add index for `inst.ReadInstanceClusterAttributes` table scan [#17866](https://github.com/vitessio/vitess/pull/17866)
|
||||
* `vtorc`: skip unnecessary backend read in `logic.LockShard(...)` [#17900](https://github.com/vitessio/vitess/pull/17900)
|
||||
### Regression
|
||||
#### Backup and Restore
|
||||
* Fix unreachable errors when taking a backup [#17062](https://github.com/vitessio/vitess/pull/17062)
|
||||
#### Java
|
||||
* [Java] Fix dependency issues in Java package [#17481](https://github.com/vitessio/vitess/pull/17481)
|
||||
#### Query Serving
|
||||
* Add support for `MultiEqual` opcode for lookup vindexes. [#16975](https://github.com/vitessio/vitess/pull/16975)
|
||||
* fix: route engine to handle column truncation for execute after lookup [#16981](https://github.com/vitessio/vitess/pull/16981)
|
||||
* Fix release 18 again [#17069](https://github.com/vitessio/vitess/pull/17069)
|
||||
* Fix a potential connection pool leak. [#17807](https://github.com/vitessio/vitess/pull/17807)
|
||||
#### VTTablet
|
||||
* fix: App and Dba Pool metrics [#18048](https://github.com/vitessio/vitess/pull/18048)
|
||||
### Release
|
||||
#### Build/CI
|
||||
* Fix the release workflow [#16964](https://github.com/vitessio/vitess/pull/16964)
|
||||
* v19 EOL: Remove v19 from Golang Update Version CI workflow [#17932](https://github.com/vitessio/vitess/pull/17932)
|
||||
#### Documentation
|
||||
* Update the EOL documentation [#17215](https://github.com/vitessio/vitess/pull/17215)
|
||||
* [release-22.0] Update release notes with proper upgrade path [#18197](https://github.com/vitessio/vitess/pull/18197)
|
||||
* [release-22.0] Narrow down affected users by new v22 migration path [#18199](https://github.com/vitessio/vitess/pull/18199)
|
||||
#### General
|
||||
* Bump to `v22.0.0-SNAPSHOT` after the `v21.0.0-RC1` release [#16913](https://github.com/vitessio/vitess/pull/16913)
|
||||
* [main] Copy `v21.0.0-RC1` release notes [#16954](https://github.com/vitessio/vitess/pull/16954)
|
||||
* [main] Copy `v21.0.0-RC2` release notes [#17048](https://github.com/vitessio/vitess/pull/17048)
|
||||
* [main] Copy `v21.0.0` release notes [#17097](https://github.com/vitessio/vitess/pull/17097)
|
||||
* [main] Copy `v18.0.8` release notes [#17155](https://github.com/vitessio/vitess/pull/17155)
|
||||
* [main] Copy `v19.0.7` release notes [#17157](https://github.com/vitessio/vitess/pull/17157)
|
||||
* [main] Copy `v20.0.3` release notes [#17159](https://github.com/vitessio/vitess/pull/17159)
|
||||
* [main] Copy `v19.0.8` release notes [#17320](https://github.com/vitessio/vitess/pull/17320)
|
||||
* [main] Copy `v20.0.4` release notes [#17322](https://github.com/vitessio/vitess/pull/17322)
|
||||
* [main] Copy `v21.0.1` release notes [#17324](https://github.com/vitessio/vitess/pull/17324)
|
||||
* [main] Copy `v19.0.9` release notes [#17595](https://github.com/vitessio/vitess/pull/17595)
|
||||
* [main] Copy `v20.0.5` release notes [#17597](https://github.com/vitessio/vitess/pull/17597)
|
||||
* [main] Copy `v21.0.2` release notes [#17599](https://github.com/vitessio/vitess/pull/17599)
|
||||
* [main] Copy `v21.0.3` release notes [#17765](https://github.com/vitessio/vitess/pull/17765)
|
||||
* [main] Copy `v20.0.6` release notes [#17767](https://github.com/vitessio/vitess/pull/17767)
|
||||
* [main] Copy `v19.0.10` release notes [#17769](https://github.com/vitessio/vitess/pull/17769)
|
||||
* [release-22.0] Code Freeze for `v22.0.0-RC1` [#18087](https://github.com/vitessio/vitess/pull/18087)
|
||||
* Bump to `v23.0.0-SNAPSHOT` after the `v22.0.0-RC1` release [#18088](https://github.com/vitessio/vitess/pull/18088)
|
||||
* [release-22.0] Release of `v22.0.0-RC1` [#18128](https://github.com/vitessio/vitess/pull/18128)
|
||||
* [release-22.0] Bump to `v22.0.0-SNAPSHOT` after the `v22.0.0-RC1` release [#18134](https://github.com/vitessio/vitess/pull/18134)
|
||||
* [release-22.0] Release of `v22.0.0-RC2` [#18168](https://github.com/vitessio/vitess/pull/18168)
|
||||
* [release-22.0] Bump to `v22.0.0-SNAPSHOT` after the `v22.0.0-RC2` release [#18170](https://github.com/vitessio/vitess/pull/18170)
|
||||
* [release-22.0] Release of `v22.0.0-RC3` [#18204](https://github.com/vitessio/vitess/pull/18204)
|
||||
* [release-22.0] Bump to `v22.0.0-SNAPSHOT` after the `v22.0.0-RC3` release [#18206](https://github.com/vitessio/vitess/pull/18206)
|
||||
### Testing
|
||||
#### Backup and Restore
|
||||
* fix flaky test on mysqlshell backup engine [#17037](https://github.com/vitessio/vitess/pull/17037)
|
||||
* [release-21.0] fix flaky test on mysqlshell backup engine [#17981](https://github.com/vitessio/vitess/pull/17981)
|
||||
#### Build/CI
|
||||
* Fix flakiness in `TestDisruptions` for two pc testing [#17106](https://github.com/vitessio/vitess/pull/17106)
|
||||
* Flakes: Address flakiness in TestZkConnClosedOnDisconnect [#17194](https://github.com/vitessio/vitess/pull/17194)
|
||||
* A couple `endtoend` cluster tests enhancement [#17247](https://github.com/vitessio/vitess/pull/17247)
|
||||
* Fix fuzzer paths [#17380](https://github.com/vitessio/vitess/pull/17380)
|
||||
* Use release branches for upgrade downgrade tests [#18029](https://github.com/vitessio/vitess/pull/18029)
|
||||
#### Cluster management
|
||||
* Flaky test fixes [#16940](https://github.com/vitessio/vitess/pull/16940)
|
||||
#### General
|
||||
* Remove broken panic handler [#17354](https://github.com/vitessio/vitess/pull/17354)
|
||||
#### Java
|
||||
* Remove deprecated syntax [#17631](https://github.com/vitessio/vitess/pull/17631)
|
||||
#### Operator
|
||||
* Add CI for VTop example [#16007](https://github.com/vitessio/vitess/pull/16007)
|
||||
#### Query Serving
|
||||
* fix: flaky test on twopc transaction [#17068](https://github.com/vitessio/vitess/pull/17068)
|
||||
* Fix flaky test `TestShardSync` [#17095](https://github.com/vitessio/vitess/pull/17095)
|
||||
* Run plan tests in end to end configuration [#17117](https://github.com/vitessio/vitess/pull/17117)
|
||||
* List join predicates used in `GetVExplainKeys` [#17130](https://github.com/vitessio/vitess/pull/17130)
|
||||
* Fix flakiness in `TestReadTransactionStatus` [#17277](https://github.com/vitessio/vitess/pull/17277)
|
||||
* Add multi table updates in the 2pc fuzzer testing [#17293](https://github.com/vitessio/vitess/pull/17293)
|
||||
* Add test for vindexes in atomic transactions package [#17308](https://github.com/vitessio/vitess/pull/17308)
|
||||
* Fix flakiness in `TestSemiSyncRequiredWithTwoPC` [#17332](https://github.com/vitessio/vitess/pull/17332)
|
||||
* test fix: make sure to keep the skipE2E field around [#17357](https://github.com/vitessio/vitess/pull/17357)
|
||||
* Ensure PRS runs for all the shards in `TestSemiSyncRequiredWithTwoPC` [#17384](https://github.com/vitessio/vitess/pull/17384)
|
||||
* Consistent lookup vindex tests for atomic distributed transactions [#17393](https://github.com/vitessio/vitess/pull/17393)
|
||||
* benchmark: TwoPC commit mode [#17397](https://github.com/vitessio/vitess/pull/17397)
|
||||
* test: make it easier to run tests without a main keyspace [#17501](https://github.com/vitessio/vitess/pull/17501)
|
||||
* Fix TestTrackerNoLock flaky test by increasing time to mark failure [#17886](https://github.com/vitessio/vitess/pull/17886)
|
||||
* Test: Increase query timeout to fix flaky test 'TestQueryTimeoutWithShardTargeting' [#18016](https://github.com/vitessio/vitess/pull/18016)
|
||||
* Skip end-to-end test [#18162](https://github.com/vitessio/vitess/pull/18162)
|
||||
#### TabletManager
|
||||
* Skip `TestRunFailsToStartTabletManager` for now [#17167](https://github.com/vitessio/vitess/pull/17167)
|
||||
* Fix flaky mysqlctl blackbox test [#17387](https://github.com/vitessio/vitess/pull/17387)
|
||||
#### VReplication
|
||||
* VReplication fix Flaky e2e test TestMoveTablesBuffering [#17180](https://github.com/vitessio/vitess/pull/17180)
|
||||
* VReplication Flaky Test fix: TestVtctldMigrateSharded [#17182](https://github.com/vitessio/vitess/pull/17182)
|
||||
* test: Add missing unit tests in `vtctl/workflow` [#17304](https://github.com/vitessio/vitess/pull/17304)
|
||||
* test: Add missing tests for `traffic_switcher.go` [#17334](https://github.com/vitessio/vitess/pull/17334)
|
||||
* VReplication: Enable VPlayerBatching in unit tests [#17339](https://github.com/vitessio/vitess/pull/17339)
|
||||
* Flaky test fix: TestMoveTablesSharded and TestMoveTablesUnsharded [#17343](https://github.com/vitessio/vitess/pull/17343)
|
||||
* test: Include unit tests for `switcher-dry-run` [#17403](https://github.com/vitessio/vitess/pull/17403)
|
||||
* Flaky TestMoveTables(Un)sharded: Handle race condition [#17440](https://github.com/vitessio/vitess/pull/17440)
|
||||
* Move VDiff related workflow server APIs to `vdiff.go` and add unit tests [#17466](https://github.com/vitessio/vitess/pull/17466)
|
||||
* Fix flaky vreplication tests: correct logic that checks for workflow state in test helper [#17498](https://github.com/vitessio/vitess/pull/17498)
|
||||
* Flaky TestTickSkip: Remove inherently flaky test [#17504](https://github.com/vitessio/vitess/pull/17504)
|
||||
* test: Add unit tests for `vtctl/workflow` [#17618](https://github.com/vitessio/vitess/pull/17618)
|
||||
* test: Add more unit tests for `server.go` [#17679](https://github.com/vitessio/vitess/pull/17679)
|
||||
* CI: Add some randomness to the ports used in VReplication e2e tests [#17712](https://github.com/vitessio/vitess/pull/17712)
|
||||
#### VTGate
|
||||
* [release-22.0]: skip test check for upgrade test for TestStraighJoin [#18153](https://github.com/vitessio/vitess/pull/18153)
|
||||
#### VTTablet
|
||||
* Fix data race in `TestIsServingLocked` [#17728](https://github.com/vitessio/vitess/pull/17728)
|
||||
#### VTorc
|
||||
* Remove mysql parameters from VTOrc setup [#16996](https://github.com/vitessio/vitess/pull/16996)
|
||||
* Fix flakiness in checking for drained tablets in Vtorc test [#18008](https://github.com/vitessio/vitess/pull/18008)
|
||||
#### schema management
|
||||
* `schemadiff`: more index expression validations (tests only) [#17483](https://github.com/vitessio/vitess/pull/17483)
|
||||
|
|
@ -0,0 +1,382 @@
|
|||
# Release of Vitess v22.0.0
|
||||
## Summary
|
||||
|
||||
### Table of Contents
|
||||
|
||||
- **[Major Changes](#major-changes)**
|
||||
- **[Deprecations](#deprecations)**
|
||||
- [Metrics](#deprecated-metrics)
|
||||
- [CLI Flags](#deprecated-cli-flags)
|
||||
- **[Deletions](#deletions)**
|
||||
- [Metrics](#deleted-metrics)
|
||||
- [CLI Flags](#deleted-cli-flags)
|
||||
- [gh-ost and pt-osc Online DDL strategies](#deleted-ghost-ptosc)
|
||||
- **[New Metrics](#new-metrics)**
|
||||
- [VTGate](#new-vtgate-metrics)
|
||||
- [VTTablet](#new-vtgate-metrics)
|
||||
- **[Config File Changes](#config-file-changes)**
|
||||
- [VTOrc](#vtorc-config-file-changes)
|
||||
- [VTGate](#vtgate-config-file-changes)
|
||||
- **[VTOrc](#vtorc)**
|
||||
- [Stalled Disk Recovery](#stall-disk-recovery-vtorc)
|
||||
- [KeyRanges in `--clusters_to_watch`](#key-range-vtorc)
|
||||
- **[New Default Versions](#new-default-versions)**
|
||||
- [MySQL 8.0.40](#mysql-8-0-40)
|
||||
- [Docker `vitess/lite` images with Debian Bookworm](#debian-bookworm)
|
||||
- **[New Support](#new-support)**
|
||||
- [More Efficient JSON Replication](#efficient-json-replication)
|
||||
- [LAST_INSERT_ID(x)](#last-insert-id)
|
||||
- [Maximum Idle Connections in the Pool](#max-idle-connections)
|
||||
- [Filtering Query logs on Error](#query-logs)
|
||||
- [MultiQuery RPC in vtgate](#multiquery)
|
||||
- [Unsharded `CREATE PROCEDURE` support](#create-procedure)
|
||||
- **[Optimization](#optimization)**
|
||||
- [Prepared Statement](#prepared-statement)
|
||||
- **[New VtctldServer RPC](#rpc-changes)**
|
||||
- **[Prefer not promoting a replica that is currently taking a backup](#reparents-prefer-not-backing-up)**
|
||||
- **[Semi-sync monitor in vttablet](#semi-sync-monitor)**
|
||||
- **[Wrapped fatal transaction errors](#new-errors-fatal-tx)**
|
||||
- **[Minor Changes](#minor-changes)**
|
||||
- **[Topology read concurrency behaviour changes](#topo-read-concurrency-changes)**
|
||||
- **[VTTablet](#minor-changes-vttablet)**
|
||||
- [CLI Flags](#flags-vttablet)
|
||||
- [ACL enforcement and reloading](#reloading-vttablet-acl)
|
||||
- **[VTAdmin](#vtadmin)**
|
||||
- [Updated to node v22.13.1](#updated-node)
|
||||
|
||||
## <a id="major-changes"/>Major Changes</a>
|
||||
|
||||
### <a id="deprecations"/>Deprecations</a>
|
||||
|
||||
#### <a id="deprecated-metrics"/>Metrics</a>
|
||||
|
||||
| Component | Metric Name | Deprecation PR |
|
||||
|:---------:|:-------------------------:|:-------------------------------------------------------:|
|
||||
| `vtgate` | `QueriesProcessed` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `vtgate` | `QueriesRouted` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `vtgate` | `QueriesProcessedByTable` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `vtgate` | `QueriesRoutedByTable` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
|
||||
|
||||
#### <a id="deprecated-cli-flags"/>CLI Flags</a>
|
||||
|
||||
| Component | Flag Name | Notes | Deprecation PR |
|
||||
|:----------:|:--------------------------------:|----------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------:|
|
||||
| `vttablet` | `twopc_enable` | Usage of TwoPC commit will be determined by the `transaction_mode` set on VTGate via flag or session variable. | [#17279](https://github.com/vitessio/vitess/pull/17279) |
|
||||
| `vtgate` | `grpc-send-session-in-streaming` | Session will always be sent as part of the response from the StreamExecute RPC. | [#17907](https://github.com/vitessio/vitess/pull/17907) |
|
||||
|
||||
---
|
||||
|
||||
### <a id="deletions"/>Deletions</a>
|
||||
|
||||
#### <a id="deleted-metrics"/>Metrics</a>
|
||||
|
||||
| Component | Metric Name | Was Deprecated In | Deletion PR |
|
||||
|:----------:|:---------------------:|:-----------------:|:-------------------------------------------------------:|
|
||||
| `vttablet` | `QueryCacheLength` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
| `vttablet` | `QueryCacheSize` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
| `vttablet` | `QueryCacheCapacity` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
| `vttablet` | `QueryCacheEvictions` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
| `vttablet` | `QueryCacheHits` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
| `vttablet` | `QueryCacheMisses` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
|
||||
#### <a id="deleted-cli-flags"/>CLI Flags</a>
|
||||
|
||||
| Component | Flag Name | Was Deprecated In | Deletion PR |
|
||||
|:-----------------------------:|:----------------------------------:|:-----------------:|:-------------------------------------------------------:|
|
||||
| `vttablet` | `queryserver-enable-settings-pool` | `v21.0.0` | [#16280](https://github.com/vitessio/vitess/pull/16280) |
|
||||
| `vttablet` | `remove-sharded-auto-increment` | `v21.0.0` | [#16860](https://github.com/vitessio/vitess/pull/16860) |
|
||||
| `vttablet` | `disable_active_reparents` | `v20.0.0` | [#14871](https://github.com/vitessio/vitess/pull/14871) |
|
||||
| `vtgate`, `vtcombo`, `vtctld` | `healthcheck-dial-concurrency` | `v21.0.0` | [#16378](https://github.com/vitessio/vitess/pull/16378) |
|
||||
|
||||
#### <a id="deleted-ghost-ptosc"/>gh-ost and pt-osc Online DDL strategies</a>
|
||||
|
||||
Vitess no longer recognizes the `gh-ost` and `pt-osc` (`pt-online-schema-change`) Online DDL strategies. The `vitess` strategy is the recommended way to make schema changes at scale. `mysql` and `direct` strategies continue to be supported.
|
||||
|
||||
These `vttablet` flags have been removed:
|
||||
|
||||
- `--gh-ost-path`
|
||||
- `--pt-osc-path`
|
||||
|
||||
Attempting to use `gh-ost` or `pt-osc` as `--ddl-strategy` will yield an error:
|
||||
```sh
|
||||
$ vtctldclient ApplySchema --ddl-strategy="gh-ost" ...
|
||||
$ vtctldclient ApplySchema --ddl-strategy="pt-osc" ...
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
### <a id="new-metrics"/>New Metrics
|
||||
|
||||
#### <a id="new-vtgate-metrics"/>VTGate
|
||||
|
||||
| Name | Dimensions | Description | PR |
|
||||
|:-------------------------:|:-------------------------------------:|:-----------------------------------------------------------:|:-------------------------------------------------------:|
|
||||
| `QueryExecutions` | `Query`, `Plan`, `Tablet` | Number of queries executed. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `QueryRoutes` | `Query`, `Plan`, `Tablet` | Number of vttablets the query was executed on. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `QueryExecutionsByTable` | `Query`, `Table` | Queries executed by vtgate, with counts recorded per table. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `VStreamsCount` | `Keyspace`, `ShardName`, `TabletType` | Number of active vstreams. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `VStreamsEventsStreamed` | `Keyspace`, `ShardName`, `TabletType` | Number of events sent across all vstreams. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `VStreamsEndedWithErrors` | `Keyspace`, `ShardName`, `TabletType` | Number of vstreams that ended with errors. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `CommitModeTimings` | `Mode` | Timing metrics for commit (Single, Multi, TwoPC). | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `CommitUnresolved` | N/A | Counter for 2PC transaction failures after Prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
|
||||
|
||||
The work done in [#17727](https://github.com/vitessio/vitess/pull/17727) introduces new metrics for queries. Via this work we have deprecated several vtgate metrics, please see the [Deprecated Metrics](#deprecated-metrics) section. Here is an example of how the new metrics are calculated:
|
||||
```
|
||||
Query: select t1.a, t2.b from t1 join t2 on t1.id = t2.id
|
||||
Shards: 2
|
||||
Sharding Key: id for both tables
|
||||
|
||||
Metrics Published:
|
||||
1. QueryExecutions – {select, scatter, primary}, 1
|
||||
2. QueryRoutes – {select, scatter, primary}, 2
|
||||
3. QueryExecutionsByTable – {select, t1}, 1 and {select, t2}, 1
|
||||
```
|
||||
|
||||
#### <a id="new-vttablet-metrics"/>VTTablet
|
||||
|
||||
| Name | Dimensions | Description | PR |
|
||||
|:-------------------------:|:----------------:|:-------------------------------------------------:|:-------------------------------------------------------:|
|
||||
| `TableRows` | `Table` | Estimated number of rows in the table. | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `TableClusteredIndexSize` | `Table` | Byte size of the clustered index (i.e. row data). | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `IndexCardinality` | `Table`, `Index` | Estimated number of unique values in the index | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `IndexBytes` | `Table`, `Index` | Byte size of the index. | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `UnresolvedTransaction` | `ManagerType` | Current number of unresolved transactions. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `CommitPreparedFail` | `FailureType` | Transactions that failed to commit after prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `RedoPreparedFail` | `FailureType` | Transactions that failed to re-prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
|
||||
---
|
||||
|
||||
### <a id="config-file-changes"/>Config File Changes</a>
|
||||
|
||||
#### <a id="vtorc-config-file-changes"/>VTOrc</a>
|
||||
|
||||
VTOrc now supports dynamic configuration using [viper](https://github.com/spf13/viper). The old `--config` parameter has been removed. Use the `--config-file` parameter instead. Configuration can be provided in json, yaml or any other format that viper supports.
|
||||
|
||||
The following fields can be dynamically changed -
|
||||
1. `instance-poll-time`
|
||||
2. `prevent-cross-cell-failover`
|
||||
3. `snapshot-topology-interval`
|
||||
4. `reasonable-replication-lag`
|
||||
5. `audit-to-backend`
|
||||
6. `audit-to-syslog`
|
||||
7. `audit-purge-duration`
|
||||
8. `wait-replicas-timeout`
|
||||
9. `tolerable-replication-lag`
|
||||
10. `topo-information-refresh-duration`
|
||||
11. `recovery-poll-duration`
|
||||
12. `allow-emergency-reparent`
|
||||
13. `change-tablets-with-errant-gtid-to-drained`
|
||||
|
||||
To upgrade to the new version of the configuration file, first switch to using the flags in your current deployment before upgrading. Then you can switch to using the configuration file after upgrade.
|
||||
|
||||
#### <a id="vtgate-config-file-changes"/>VTGate</a>
|
||||
|
||||
The Viper configuration keys for the following flags has been changed to match their flag names. Previously they had a discovery prefix instead of it being part of the name.
|
||||
|
||||
| Flag Name | Old Configuration Key | New Configuration Key |
|
||||
|--------------------------------------------------|--------------------------------------------------|--------------------------------------------------|
|
||||
| `discovery_low_replication_lag` | `discovery.low_replication_lag` | `discovery_low_replication_lag` |
|
||||
| `discovery_high_replication_lag_minimum_serving` | `discovery.high_replication_lag_minimum_serving` | `discovery_high_replication_lag_minimum_serving` |
|
||||
| `discovery_min_number_serving_vttablets` | `discovery.min_number_serving_vttablets` | `discovery_min_number_serving_vttablets` |
|
||||
| `discovery_legacy_replication_lag_algorithm` | `discovery.legacy_replication_lag_algorithm` | `discovery_legacy_replication_lag_algorithm` |
|
||||
|
||||
To upgrade to the newer version of the configuration keys, first switch to using the flags in your current deployment before upgrading. Then you can switch to using the new configuration keys after upgrade.
|
||||
|
||||
---
|
||||
|
||||
### <a id="vtorc"/>VTOrc</a>
|
||||
|
||||
#### <a id="stall-disk-recovery-vtorc"/>Stalled Disk Recovery</a>
|
||||
|
||||
VTOrc can now identify and recover from stalled disk errors.
|
||||
VTTablets test whether the disk is writable and they send this information in the `FullStatus` RPC response to VTOrc.
|
||||
If the disk is not writable on the primary tablet, VTOrc will attempt to recover the cluster by promoting a new primary.
|
||||
This is useful in scenarios where the disk is stalled and the primary vttablet is unable to accept writes because of it.
|
||||
|
||||
To opt into this feature, `--enable-primary-disk-stalled-recovery` flag has to be specified on VTOrc, and `--disk-write-dir` flag has to be specified on the vttablets.
|
||||
`--disk-write-interval` and `--disk-write-timeout` flags can be used to configure the polling interval and timeout respectively.
|
||||
|
||||
#### <a id="key-range-vtorc"/>KeyRanges in `--clusters_to_watch`</a>
|
||||
VTOrc now supports specifying keyranges in the `--clusters_to_watch` flag. This means that there is no need to restart a VTOrc instance with a different flag value when you reshard a keyspace.
|
||||
|
||||
For example, if a VTOrc is configured to watch `ks/-80`, then it would watch all the shards that fall under the keyrange `-80`.
|
||||
If a reshard is performed and `-80` is split into new shards `-40` and `40-80`, the VTOrc instance will automatically start watching the new shards without needing a restart.
|
||||
In the previous logic, specifying `ks/-80` for the flag would mean that VTOrc would watch only 1 (or no) shard.
|
||||
In the new system, since we interpret `-80` as a key range, it can watch multiple shards as described in the example.
|
||||
|
||||
Users can continue to specify exact keyranges. The new feature is backward compatible.
|
||||
|
||||
---
|
||||
### <a id="new-default-versions"/>New Default Versions</a>
|
||||
|
||||
#### <a id="mysql-8-0-40"/>MySQL 8.0.40</a>
|
||||
|
||||
The default major MySQL version used by our `vitess/lite:latest` image is going from `8.0.30` to `8.0.40`.
|
||||
This change was merged in [#17552](https://github.com/vitessio/vitess/pull/17552).
|
||||
|
||||
VTGate also advertises MySQL version `8.0.40` by default instead of `8.0.30`. If that is not what you are running, you can set the `mysql_server_version` flag to advertise the desired version.
|
||||
|
||||
> ⚠️ Upgrading to this release with vitess-operator:
|
||||
>
|
||||
> If you are using the `vitess-operator`, considering that we are bumping the MySQL version from `8.0.30` to `8.0.40`, you will have to manually upgrade:
|
||||
>
|
||||
> 1. Add `innodb_fast_shutdown=0` to your extra cnf in your YAML file.
|
||||
> 2. Apply this file.
|
||||
> 3. Wait for all the pods to be healthy.
|
||||
> 4. Then change your YAML file to use the new Docker Images (`vitess/lite:v22.0.0`).
|
||||
> 5. Remove `innodb_fast_shutdown=0` from your extra cnf in your YAML file.
|
||||
> 6. Apply this file.
|
||||
>
|
||||
> This is the last time this will be needed in the `8.0.x` series, as starting with MySQL `8.0.35` it is possible to upgrade and downgrade between `8.0.x` versions without needing to run `innodb_fast_shutdown=0`.
|
||||
|
||||
#### <a id="debian-bookworm"/>Docker `vitess/lite` images with Debian Bookworm</a>
|
||||
|
||||
The docker build system now uses Debian Bookworm instead of Debian Bullseye for the `vitess/lite` images. This change was merged in [#17552](https://github.com/vitessio/vitess/pull/17552).
|
||||
|
||||
---
|
||||
|
||||
### <a id="new-support"/>New Support</a>
|
||||
|
||||
#### <a id="efficient-json-replication"/>More Efficient JSON Replication</a>
|
||||
|
||||
In [#7345](https://github.com/vitessio/vitess/pull/17345) we added support for [`--binlog-row-value-options=PARTIAL_JSON`](https://dev.mysql.com/doc/refman/en/replication-options-binary-log.html#sysvar_binlog_row_value_options). You can read more about [this feature added to MySQL 8.0 here](https://dev.mysql.com/blog-archive/efficient-json-replication-in-mysql-8-0/).
|
||||
|
||||
If you are using MySQL 8.0 or later and using JSON columns, you can now enable this MySQL feature across your Vitess cluster(s) to lower the disk space needed for binary logs and improve the CPU and memory usage in both `mysqld` (standard intrashard MySQL replication) and `vttablet` ([VReplication](https://vitess.io/docs/reference/vreplication/vreplication/)) without losing any capabilities or features.
|
||||
|
||||
#### <a id="last-insert-id"/>`LAST_INSERT_ID(x)`</a>
|
||||
|
||||
In [#17408](https://github.com/vitessio/vitess/pull/17408) and [#17409](https://github.com/vitessio/vitess/pull/17409), we added the ability to use `LAST_INSERT_ID(x)` in Vitess directly at vtgate. This improvement allows certain queries—like `SELECT last_insert_id(123);` or `SELECT last_insert_id(count(*)) ...`—to be handled without relying on MySQL for the final value.
|
||||
|
||||
**Limitations**:
|
||||
- When using `LAST_INSERT_ID(x)` in ordered queries (e.g., `SELECT last_insert_id(col) FROM table ORDER BY foo`), MySQL sets the session’s last-insert-id value according to the *last row returned*. Vitess does not guarantee the same behavior.
|
||||
|
||||
#### <a id="max-idle-connections"/>Maximum Idle Connections in the Pool</a>
|
||||
|
||||
In [#17443](https://github.com/vitessio/vitess/pull/17443) we introduced a new configurable max-idle-count parameter for connection pools. This allows you to specify the maximum number of idle connections retained in each connection pool to optimize performance and resource efficiency.
|
||||
|
||||
You can control idle connection retention for the query server’s query pool, stream pool, and transaction pool with the following flags:
|
||||
• --queryserver-config-query-pool-max-idle-count: Defines the maximum number of idle connections retained in the query pool.
|
||||
• --queryserver-config-stream-pool-max-idle-count: Defines the maximum number of idle connections retained in the stream pool.
|
||||
• --queryserver-config-txpool-max-idle-count: Defines the maximum number of idle connections retained in the transaction pool.
|
||||
|
||||
This feature ensures that, during traffic spikes, idle connections are available for faster responses, while minimizing overhead in low-traffic periods by limiting the number of idle connections retained. It helps strike a balance between performance, efficiency, and cost.
|
||||
|
||||
#### <a id="query-logs"/>Filtering Query logs on Error</a>
|
||||
|
||||
The `querylog-mode` setting can be configured to `error` to log only queries that result in errors. This option is supported in both VTGate and VTTablet.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="multiquery"/>MultiQuery RPC in vtgate</a>
|
||||
|
||||
New RPCs have been added to VTGate that allow users to pass multiple queries in a single sql string. The behavior is the same as that of MySQL: the RPCs will return multiple result sets in the same order as the queries until and unless an error is encountered. The new RPCs are `ExecuteMulti` and `StreamExecuteMulti`.
|
||||
|
||||
A new flag `--mysql-server-multi-query-protocol` has also been added that makes the server use this new implementation. This flag is set to `false` by default, so the old implementation is used by default. The new implementation is more efficient and allows for better performance when executing multiple queries in a single RPC call.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="create-procedure"/>Unsharded `CREATE PROCEDURE` support</a>
|
||||
|
||||
Until now Vitess didn't allow users to create procedures through VTGate. They had to be created by running a DDL directly against the underlying MySQL. In this release, we have started adding support for running `CREATE PROCEDURE` statements through VTGate for unsharded keyspaces. Not all constructs of procedures are currently supported in the parser, so there are still some limitations which will be addressed in future releases.
|
||||
|
||||
---
|
||||
|
||||
### <a id="optimization"/>Optimization</a>
|
||||
|
||||
#### <a id="prepared-statement"/>Prepared Statement</a>
|
||||
Prepared statements now benefit from Deferred Optimization, enabling parameter-aware query plans.
|
||||
Initially, a baseline plan is created at prepare-time, and on first execution, a more efficient parameter-optimized plan is generated.
|
||||
Subsequent executions dynamically switch between these plans based on input values, improving query performance while ensuring correctness.
|
||||
|
||||
---
|
||||
|
||||
### <a id="rpc-changes"/>New VtctldServer RPC</a>
|
||||
|
||||
`GetTransactionInfo` RPC has been added to `VtctldServer` and `TabletManagerClient` interfaces. These RPCs can be used to read the state of an unresolved distributed transaction. This can be useful in debugging what went wrong and how to fix the problem.
|
||||
|
||||
---
|
||||
|
||||
### <a id="reparents-prefer-not-backing-up"/>Prefer not promoting a replica that is currently taking a backup
|
||||
|
||||
Emergency reparents now prefer to not promote replicas that are currently taking backups with a backup engine other than
|
||||
`builtin`. Note that if there's only one suitable replica to promote, and it is taking a backup, it will still be
|
||||
promoted.
|
||||
|
||||
For planned reparents, hosts taking backups with a backup engine other than `builtin` are filtered out of the list of
|
||||
valid candidates. This means they will never get promoted - not even if there are no other candidates.
|
||||
|
||||
Note that behavior for `builtin` backups remains unchanged: a replica that is currently taking a `builtin` backup will
|
||||
never be promoted, neither by planned nor by emergency reparents.
|
||||
|
||||
---
|
||||
|
||||
### <a id="semi-sync-monitor"/>Semi-sync monitor in vttablet</a>
|
||||
|
||||
Primary VTTablets now monitor the semi-sync status of their underlying MySQL instance .
|
||||
We've observed cases where a brief network disruption can cause the primary to get stuck indefinitely waiting for semi-sync ACKs.
|
||||
In rare scenarios, this can also block reparent operations and render the primary unresponsive.
|
||||
More information can be found in the issues [#17709](https://github.com/vitessio/vitess/issues/17709) and [#17749](https://github.com/vitessio/vitess/issues/17749).
|
||||
|
||||
To address this, the primary VTTablets continuously monitor their semi-sync status. If the primary MySQL gets stuck waiting for semi-sync ACKs, the monitor generates synthetic writes to unblock it. If this fails, VTOrc is notified of the issue and it will initiate an emergency reparent operation.
|
||||
|
||||
The monitoring interval can be adjusted using the `--semi-sync-monitor-interval` flag, which defaults to 10 seconds.
|
||||
|
||||
---
|
||||
|
||||
### <a id="new-errors-fatal-tx"/>Wrapped fatal transaction errors</a>
|
||||
|
||||
When a query fails while running in a transaction, due to the transaction no longer being valid (e.g. PRS, rollout, primary down, etc.), the original error is now wrapped in a `VT15001` error.
|
||||
|
||||
When a query produce a `VT15001` error, VTGate will try to rollback and clear the transaction.
|
||||
Any new queries on the same connection will fail with a `VT09032` error, until a `ROLLBACK` is received
|
||||
to acknowledge that the transaction was automatically rolled back and cleared by VTGate.
|
||||
|
||||
`VT09032` is returned to clients to avoid applications blindly sending queries to VTGate thinking they are still in a transaction.
|
||||
|
||||
This change was introduced by [#17669](https://github.com/vitessio/vitess/pull/17669).
|
||||
|
||||
|
||||
---
|
||||
|
||||
## <a id="minor-changes"/>Minor Changes</a>
|
||||
|
||||
### <a id="topo-read-concurrency-changes"/>`--topo_read_concurrency` behaviour changes
|
||||
|
||||
The `--topo_read_concurrency` flag was added to all components that access the topology and the provided limit is now applied separately for each global or local cell _(default `32`)_.
|
||||
|
||||
All topology read calls _(`Get`, `GetVersion`, `List` and `ListDir`)_ now respect this per-cell limit. Previous to this version a single limit was applied to all cell calls and it was not respected by many topology calls.
|
||||
|
||||
---
|
||||
|
||||
### <a id="minor-changes-vttablet"/>VTTablet</a>
|
||||
|
||||
#### <a id="flags-vttablet"/>CLI Flags</a>
|
||||
|
||||
- `twopc_abandon_age` flag now supports values in the time.Duration format (e.g., 1s, 2m, 1h).
|
||||
While the flag will continue to accept float values (interpreted as seconds) for backward compatibility,
|
||||
**float inputs are deprecated** and will be removed in a future release.
|
||||
|
||||
- `--consolidator-query-waiter-cap` flag to set the maximum number of clients allowed to wait on the consolidator. The default value is set to 0 for unlimited wait. Users can adjust this value based on the performance of VTTablet to avoid excessive memory usage and the risk of being OOMKilled, particularly in Kubernetes deployments.
|
||||
|
||||
#### <a id="reloading-vttablet-acl"/>ACL enforcement and reloading</a>
|
||||
|
||||
When a tablet is started with `--enforce-tableacl-config` it will exit with an error if the contents of the file are not valid. After the changes made in [#17485](https://github.com/vitessio/vitess/pull/17485) the tablet will no longer exit when reloading the contents of the file after receiving a SIGHUP. When the file contents are invalid on reload the tablet will now log an error and the active in-memory ACLs remain in effect.
|
||||
|
||||
---
|
||||
|
||||
### <a id="vtadmin"/>VTAdmin
|
||||
|
||||
#### <a id="updated-node"/>vtadmin-web updated to node v22.13.1 (LTS)
|
||||
|
||||
Building `vtadmin-web` now requires node >= v22.13.0 (LTS). Breaking changes from v20 to v22 can be found at https://nodejs.org/en/blog/release/v22.13.0 -- with no known issues that apply to VTAdmin.
|
||||
Full details on the node v20.12.2 release can be found at https://nodejs.org/en/blog/release/v22.13.1.
|
||||
|
||||
------------
|
||||
The entire changelog for this release can be found [here](https://github.com/vitessio/vitess/blob/main/changelog/22.0/22.0.0/changelog.md).
|
||||
|
||||
The release includes 475 merged Pull Requests.
|
||||
|
||||
Thanks to all our contributors: @GrahamCampbell, @GuptaManan100, @L3o-pold, @akagami-harsh, @anirbanmu, @app/dependabot, @app/vitess-bot, @arthmis, @arthurschreiber, @beingnoble03, @c-r-dev, @corbantek, @dbussink, @deepthi, @derekperkins, @ejortegau, @frouioui, @garfthoffman, @gmpify, @gopoto, @harshit-gangal, @huochexizhan, @jeefy, @jwangace, @kbutz, @lmorduch, @mattlord, @mattrobenolt, @maxenglander, @mcrauwel, @mounicasruthi, @niladrix719, @notfelineit, @rafer, @rohit-nayak-ps, @rvrangel, @shailpujan88, @shanth96, @shlomi-noach, @siadat, @systay, @timvaillancourt, @twthorn, @vitess-bot, @vmg, @wiebeytec, @wukuai
|
||||
|
|
@ -27,9 +27,11 @@
|
|||
- [LAST_INSERT_ID(x)](#last-insert-id)
|
||||
- [Maximum Idle Connections in the Pool](#max-idle-connections)
|
||||
- [Filtering Query logs on Error](#query-logs)
|
||||
- [MultiQuery RPC in vtgate](#multiquery)
|
||||
- [Unsharded `CREATE PROCEDURE` support](#create-procedure)
|
||||
- **[Optimization](#optimization)**
|
||||
- [Prepared Statement](#prepared-statement)
|
||||
- **[RPC Changes](#rpc-changes)**
|
||||
- **[New VtctldServer RPC](#rpc-changes)**
|
||||
- **[Prefer not promoting a replica that is currently taking a backup](#reparents-prefer-not-backing-up)**
|
||||
- **[Semi-sync monitor in vttablet](#semi-sync-monitor)**
|
||||
- **[Wrapped fatal transaction errors](#new-errors-fatal-tx)**
|
||||
|
@ -60,7 +62,7 @@
|
|||
| Component | Flag Name | Notes | Deprecation PR |
|
||||
|:----------:|:--------------------------------:|----------------------------------------------------------------------------------------------------------------|:-------------------------------------------------------:|
|
||||
| `vttablet` | `twopc_enable` | Usage of TwoPC commit will be determined by the `transaction_mode` set on VTGate via flag or session variable. | [#17279](https://github.com/vitessio/vitess/pull/17279) |
|
||||
| `vtgate` | `grpc-send-session-in-streaming` | Session will be sent as part of response on StreamExecute API call. | [#17907](https://github.com/vitessio/vitess/pull/17907) |
|
||||
| `vtgate` | `grpc-send-session-in-streaming` | Session will always be sent as part of the response from the StreamExecute RPC. | [#17907](https://github.com/vitessio/vitess/pull/17907) |
|
||||
|
||||
---
|
||||
|
||||
|
@ -68,7 +70,7 @@
|
|||
|
||||
#### <a id="deleted-metrics"/>Metrics</a>
|
||||
|
||||
| Component | Metric Name | Was Deprecated In | Deprecation PR |
|
||||
| Component | Metric Name | Was Deprecated In | Deletion PR |
|
||||
|:----------:|:---------------------:|:-----------------:|:-------------------------------------------------------:|
|
||||
| `vttablet` | `QueryCacheLength` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
| `vttablet` | `QueryCacheSize` | `v21.0.0` | [#16289](https://github.com/vitessio/vitess/pull/16289) |
|
||||
|
@ -79,7 +81,7 @@
|
|||
|
||||
#### <a id="deleted-cli-flags"/>CLI Flags</a>
|
||||
|
||||
| Component | Flag Name | Was Deprecated In | Deprecation PR |
|
||||
| Component | Flag Name | Was Deprecated In | Deletion PR |
|
||||
|:-----------------------------:|:----------------------------------:|:-----------------:|:-------------------------------------------------------:|
|
||||
| `vttablet` | `queryserver-enable-settings-pool` | `v21.0.0` | [#16280](https://github.com/vitessio/vitess/pull/16280) |
|
||||
| `vttablet` | `remove-sharded-auto-increment` | `v21.0.0` | [#16860](https://github.com/vitessio/vitess/pull/16860) |
|
||||
|
@ -95,7 +97,7 @@ These `vttablet` flags have been removed:
|
|||
- `--gh-ost-path`
|
||||
- `--pt-osc-path`
|
||||
|
||||
The use of `gh-ost` and `pt-osc` as strategies as follows, yields an error:
|
||||
Attempting to use `gh-ost` or `pt-osc` as `--ddl-strategy` will yield an error:
|
||||
```sh
|
||||
$ vtctldclient ApplySchema --ddl-strategy="gh-ost" ...
|
||||
$ vtctldclient ApplySchema --ddl-strategy="pt-osc" ...
|
||||
|
@ -111,15 +113,15 @@ $ vtctldclient ApplySchema --ddl-strategy="pt-osc" ...
|
|||
|:-------------------------:|:-------------------------------------:|:-----------------------------------------------------------:|:-------------------------------------------------------:|
|
||||
| `QueryExecutions` | `Query`, `Plan`, `Tablet` | Number of queries executed. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `QueryRoutes` | `Query`, `Plan`, `Tablet` | Number of vttablets the query was executed on. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `QueryExecutionsByTable` | `Query`, `Table` | Queries executed at vtgate, with counts recorded per table. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `VStreamsCount` | `Keyspace`, `ShardName`, `TabletType` | Number of active vstream. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `QueryExecutionsByTable` | `Query`, `Table` | Queries executed by vtgate, with counts recorded per table. | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `VStreamsCount` | `Keyspace`, `ShardName`, `TabletType` | Number of active vstreams. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `VStreamsEventsStreamed` | `Keyspace`, `ShardName`, `TabletType` | Number of events sent across all vstreams. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `VStreamsEndedWithErrors` | `Keyspace`, `ShardName`, `TabletType` | Number of vstreams that ended with errors. | [#17858](https://github.com/vitessio/vitess/pull/17858) |
|
||||
| `CommitModeTimings` | `Mode` | Timing metrics for commit (Single, Multi, TwoPC). | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `CommitUnresolved` | N/A | Counter for failure after Prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `CommitUnresolved` | N/A | Counter for 2PC transaction failures after Prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
|
||||
|
||||
The work done [#17727](https://github.com/vitessio/vitess/pull/17727) introduces new metrics for queries. Via this work we have deprecated several vtgate metrics, please see the [Deprecated Metrics](#deprecated-metrics) section. Here is an example on how to use them:
|
||||
The work done in [#17727](https://github.com/vitessio/vitess/pull/17727) introduces new metrics for queries. Via this work we have deprecated several vtgate metrics, please see the [Deprecated Metrics](#deprecated-metrics) section. Here is an example of how the new metrics are calculated:
|
||||
```
|
||||
Query: select t1.a, t2.b from t1 join t2 on t1.id = t2.id
|
||||
Shards: 2
|
||||
|
@ -131,8 +133,6 @@ Metrics Published:
|
|||
3. QueryExecutionsByTable – {select, t1}, 1 and {select, t2}, 1
|
||||
```
|
||||
|
||||
---
|
||||
|
||||
#### <a id="new-vttablet-metrics"/>VTTablet
|
||||
|
||||
| Name | Dimensions | Description | PR |
|
||||
|
@ -141,9 +141,9 @@ Metrics Published:
|
|||
| `TableClusteredIndexSize` | `Table` | Byte size of the clustered index (i.e. row data). | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `IndexCardinality` | `Table`, `Index` | Estimated number of unique values in the index | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `IndexBytes` | `Table`, `Index` | Byte size of the index. | [#17570](https://github.com/vitessio/vitess/pull/17570) |
|
||||
| `UnresolvedTransaction` | `ManagerType` | Number of events sent across all vstreams. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `CommitPreparedFail` | `FailureType` | Number of vstreams that ended with errors. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `RedoPreparedFail` | `FailureType` | Timing metrics for commit (Single, Multi, TwoPC) | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `UnresolvedTransaction` | `ManagerType` | Current number of unresolved transactions. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `CommitPreparedFail` | `FailureType` | Transactions that failed to commit after prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
| `RedoPreparedFail` | `FailureType` | Transactions that failed to re-prepare. | [#16939](https://github.com/vitessio/vitess/pull/16939) |
|
||||
|
||||
---
|
||||
|
||||
|
@ -151,7 +151,7 @@ Metrics Published:
|
|||
|
||||
#### <a id="vtorc-config-file-changes"/>VTOrc</a>
|
||||
|
||||
The configuration file for VTOrc has been updated to now support dynamic fields. The old `--config` parameter has been removed. The alternative is to use the `--config-file` parameter. The configuration can now be provided in json, yaml or any other format that [viper](https://github.com/spf13/viper) supports.
|
||||
VTOrc now supports dynamic configuration using [viper](https://github.com/spf13/viper). The old `--config` parameter has been removed. Use the `--config-file` parameter instead. Configuration can be provided in json, yaml or any other format that viper supports.
|
||||
|
||||
The following fields can be dynamically changed -
|
||||
1. `instance-poll-time`
|
||||
|
@ -168,9 +168,7 @@ The following fields can be dynamically changed -
|
|||
12. `allow-emergency-reparent`
|
||||
13. `change-tablets-with-errant-gtid-to-drained`
|
||||
|
||||
To upgrade to the newer version of the configuration file, first switch to using the flags in your current deployment before upgrading. Then you can switch to using the configuration file in the newer release.
|
||||
|
||||
---
|
||||
To upgrade to the new version of the configuration file, first switch to using the flags in your current deployment before upgrading. Then you can switch to using the configuration file after upgrade.
|
||||
|
||||
#### <a id="vtgate-config-file-changes"/>VTGate</a>
|
||||
|
||||
|
@ -183,7 +181,7 @@ The Viper configuration keys for the following flags has been changed to match t
|
|||
| `discovery_min_number_serving_vttablets` | `discovery.min_number_serving_vttablets` | `discovery_min_number_serving_vttablets` |
|
||||
| `discovery_legacy_replication_lag_algorithm` | `discovery.legacy_replication_lag_algorithm` | `discovery_legacy_replication_lag_algorithm` |
|
||||
|
||||
To upgrade to the newer version of the configuration keys, first switch to using the flags in your current deployment before upgrading. Then you can switch to using the new configuration keys in the newer release.
|
||||
To upgrade to the newer version of the configuration keys, first switch to using the flags in your current deployment before upgrading. Then you can switch to using the new configuration keys after upgrade.
|
||||
|
||||
---
|
||||
|
||||
|
@ -192,15 +190,13 @@ To upgrade to the newer version of the configuration keys, first switch to using
|
|||
#### <a id="stall-disk-recovery-vtorc"/>Stalled Disk Recovery</a>
|
||||
|
||||
VTOrc can now identify and recover from stalled disk errors.
|
||||
VTTablets test whether the disk is writable and they send this information in the full status output to VTOrc.
|
||||
VTTablets test whether the disk is writable and they send this information in the `FullStatus` RPC response to VTOrc.
|
||||
If the disk is not writable on the primary tablet, VTOrc will attempt to recover the cluster by promoting a new primary.
|
||||
This is useful in scenarios where the disk is stalled and the primary vttablet is unable to accept writes because of it.
|
||||
|
||||
To opt into this feature, `--enable-primary-disk-stalled-recovery` flag has to be specified on VTOrc, and `--disk-write-dir` flag has to be specified on the vttablets.
|
||||
`--disk-write-interval` and `--disk-write-timeout` flags can be used to configure the polling interval and timeout respectively.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="key-range-vtorc"/>KeyRanges in `--clusters_to_watch`</a>
|
||||
VTOrc now supports specifying keyranges in the `--clusters_to_watch` flag. This means that there is no need to restart a VTOrc instance with a different flag value when you reshard a keyspace.
|
||||
|
||||
|
@ -217,13 +213,13 @@ Users can continue to specify exact keyranges. The new feature is backward compa
|
|||
#### <a id="mysql-8-0-40"/>MySQL 8.0.40</a>
|
||||
|
||||
The default major MySQL version used by our `vitess/lite:latest` image is going from `8.0.30` to `8.0.40`.
|
||||
This change was brought by [#17552](https://github.com/vitessio/vitess/pull/17552).
|
||||
This change was merged in [#17552](https://github.com/vitessio/vitess/pull/17552).
|
||||
|
||||
VTGate also advertises MySQL version `8.0.40` by default instead of `8.0.30` if no explicit version is set. The users can set the `mysql_server_version` flag to advertise the correct version.
|
||||
VTGate also advertises MySQL version `8.0.40` by default instead of `8.0.30`. If that is not what you are running, you can set the `mysql_server_version` flag to advertise the desired version.
|
||||
|
||||
> ⚠️ Upgrading to this release with vitess-operator:
|
||||
>
|
||||
> If you are using the `vitess-operator`, considering that we are bumping the patch version of MySQL 80 from `8.0.30` to `8.0.40`, you will have to manually upgrade:
|
||||
> If you are using the `vitess-operator`, considering that we are bumping the MySQL version from `8.0.30` to `8.0.40`, you will have to manually upgrade:
|
||||
>
|
||||
> 1. Add `innodb_fast_shutdown=0` to your extra cnf in your YAML file.
|
||||
> 2. Apply this file.
|
||||
|
@ -234,11 +230,9 @@ VTGate also advertises MySQL version `8.0.40` by default instead of `8.0.30` if
|
|||
>
|
||||
> This is the last time this will be needed in the `8.0.x` series, as starting with MySQL `8.0.35` it is possible to upgrade and downgrade between `8.0.x` versions without needing to run `innodb_fast_shutdown=0`.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="debian-bookworm"/>Docker `vitess/lite` images with Debian Bookworm</a>
|
||||
|
||||
The base system now uses Debian Bookworm instead of Debian Bullseye for the `vitess/lite` images. This change was brought by [#17552](https://github.com/vitessio/vitess/pull/17552).
|
||||
The docker build system now uses Debian Bookworm instead of Debian Bullseye for the `vitess/lite` images. This change was merged in [#17552](https://github.com/vitessio/vitess/pull/17552).
|
||||
|
||||
---
|
||||
|
||||
|
@ -250,8 +244,6 @@ In [#7345](https://github.com/vitessio/vitess/pull/17345) we added support for [
|
|||
|
||||
If you are using MySQL 8.0 or later and using JSON columns, you can now enable this MySQL feature across your Vitess cluster(s) to lower the disk space needed for binary logs and improve the CPU and memory usage in both `mysqld` (standard intrashard MySQL replication) and `vttablet` ([VReplication](https://vitess.io/docs/reference/vreplication/vreplication/)) without losing any capabilities or features.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="last-insert-id"/>`LAST_INSERT_ID(x)`</a>
|
||||
|
||||
In [#17408](https://github.com/vitessio/vitess/pull/17408) and [#17409](https://github.com/vitessio/vitess/pull/17409), we added the ability to use `LAST_INSERT_ID(x)` in Vitess directly at vtgate. This improvement allows certain queries—like `SELECT last_insert_id(123);` or `SELECT last_insert_id(count(*)) ...`—to be handled without relying on MySQL for the final value.
|
||||
|
@ -259,8 +251,6 @@ In [#17408](https://github.com/vitessio/vitess/pull/17408) and [#17409](https://
|
|||
**Limitations**:
|
||||
- When using `LAST_INSERT_ID(x)` in ordered queries (e.g., `SELECT last_insert_id(col) FROM table ORDER BY foo`), MySQL sets the session’s last-insert-id value according to the *last row returned*. Vitess does not guarantee the same behavior.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="max-idle-connections"/>Maximum Idle Connections in the Pool</a>
|
||||
|
||||
In [#17443](https://github.com/vitessio/vitess/pull/17443) we introduced a new configurable max-idle-count parameter for connection pools. This allows you to specify the maximum number of idle connections retained in each connection pool to optimize performance and resource efficiency.
|
||||
|
@ -272,14 +262,26 @@ You can control idle connection retention for the query server’s query pool, s
|
|||
|
||||
This feature ensures that, during traffic spikes, idle connections are available for faster responses, while minimizing overhead in low-traffic periods by limiting the number of idle connections retained. It helps strike a balance between performance, efficiency, and cost.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="query-logs"/>Filtering Query logs on Error</a>
|
||||
|
||||
The `querylog-mode` setting can be configured to `error` to log only queries that result in errors. This option is supported in both VTGate and VTTablet.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="multiquery"/>MultiQuery RPC in vtgate</a>
|
||||
|
||||
New RPCs have been added to VTGate that allow users to pass multiple queries in a single sql string. The behavior is the same as that of MySQL: the RPCs will return multiple result sets in the same order as the queries until and unless an error is encountered. The new RPCs are `ExecuteMulti` and `StreamExecuteMulti`.
|
||||
|
||||
A new flag `--mysql-server-multi-query-protocol` has also been added that makes the server use this new implementation. This flag is set to `false` by default, so the old implementation is used by default. The new implementation is more efficient and allows for better performance when executing multiple queries in a single RPC call.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="create-procedure"/>Unsharded `CREATE PROCEDURE` support</a>
|
||||
|
||||
Until now Vitess didn't allow users to create procedures through VTGate. They had to be created by running a DDL directly against the underlying MySQL. In this release, we have started adding support for running `CREATE PROCEDURE` statements through VTGate for unsharded keyspaces. Not all constructs of procedures are currently supported in the parser, so there are still some limitations which will be addressed in future releases.
|
||||
|
||||
---
|
||||
|
||||
### <a id="optimization"/>Optimization</a>
|
||||
|
||||
#### <a id="prepared-statement"/>Prepared Statement</a>
|
||||
|
@ -287,22 +289,22 @@ Prepared statements now benefit from Deferred Optimization, enabling parameter-a
|
|||
Initially, a baseline plan is created at prepare-time, and on first execution, a more efficient parameter-optimized plan is generated.
|
||||
Subsequent executions dynamically switch between these plans based on input values, improving query performance while ensuring correctness.
|
||||
|
||||
### <a id="rpc-changes"/>RPC Changes</a>
|
||||
---
|
||||
|
||||
These are the RPC changes made in this release -
|
||||
### <a id="rpc-changes"/>New VtctldServer RPC</a>
|
||||
|
||||
1. `GetTransactionInfo` RPC has been added to both `VtctldServer`, and `TabletManagerClient` interface. These RPCs are used to facilitate the users in reading the state of an unresolved distributed transaction. This can be useful in debugging what went wrong and how to fix the problem.
|
||||
`GetTransactionInfo` RPC has been added to `VtctldServer` and `TabletManagerClient` interfaces. These RPCs can be used to read the state of an unresolved distributed transaction. This can be useful in debugging what went wrong and how to fix the problem.
|
||||
|
||||
---
|
||||
|
||||
### <a id="reparents-prefer-not-backing-up"/>Prefer not promoting a replica that is currently taking a backup
|
||||
|
||||
Emergency reparents now prefer not promoting replicas that are currently taking backups with a backup engine other than
|
||||
Emergency reparents now prefer to not promote replicas that are currently taking backups with a backup engine other than
|
||||
`builtin`. Note that if there's only one suitable replica to promote, and it is taking a backup, it will still be
|
||||
promoted.
|
||||
|
||||
For planned reparents, hosts taking backups with a backup engine other than `builtin` are filtered out of the list of
|
||||
valid candidates. This means they will never get promoted - not even if there's no other candidates.
|
||||
valid candidates. This means they will never get promoted - not even if there are no other candidates.
|
||||
|
||||
Note that behavior for `builtin` backups remains unchanged: a replica that is currently taking a `builtin` backup will
|
||||
never be promoted, neither by planned nor by emergency reparents.
|
||||
|
@ -311,12 +313,12 @@ never be promoted, neither by planned nor by emergency reparents.
|
|||
|
||||
### <a id="semi-sync-monitor"/>Semi-sync monitor in vttablet</a>
|
||||
|
||||
A new component has been added to the vttablet binary to monitor the semi-sync status of primary vttablets.
|
||||
Primary VTTablets now monitor the semi-sync status of their underlying MySQL instance .
|
||||
We've observed cases where a brief network disruption can cause the primary to get stuck indefinitely waiting for semi-sync ACKs.
|
||||
In rare scenarios, this can block reparent operations and render the primary unresponsive.
|
||||
In rare scenarios, this can also block reparent operations and render the primary unresponsive.
|
||||
More information can be found in the issues [#17709](https://github.com/vitessio/vitess/issues/17709) and [#17749](https://github.com/vitessio/vitess/issues/17749).
|
||||
|
||||
To address this, the new component continuously monitors the semi-sync status. If the primary becomes stuck on semi-sync ACKs, it generates writes to unblock it. If this fails, VTOrc is notified of the issue and initiates an emergency reparent operation.
|
||||
To address this, the primary VTTablets continuously monitor their semi-sync status. If the primary MySQL gets stuck waiting for semi-sync ACKs, the monitor generates synthetic writes to unblock it. If this fails, VTOrc is notified of the issue and it will initiate an emergency reparent operation.
|
||||
|
||||
The monitoring interval can be adjusted using the `--semi-sync-monitor-interval` flag, which defaults to 10 seconds.
|
||||
|
||||
|
@ -324,10 +326,9 @@ The monitoring interval can be adjusted using the `--semi-sync-monitor-interval`
|
|||
|
||||
### <a id="new-errors-fatal-tx"/>Wrapped fatal transaction errors</a>
|
||||
|
||||
When a query fails while running in a transaction, due to the transaction no longer being valid (e.g. PRS, rollout, primary down, etc.), the original error is now wrapped in a `VT15001` error.
|
||||
|
||||
When a query fails while being in a transaction, due to the transaction no longer being valid (e.g. PRS, rollout, primary down, etc), the original error is now wrapped around a `VT15001` error.
|
||||
|
||||
For non-transactional queries that produce a `VT15001`, VTGate will try to rollback and clear the transaction.
|
||||
When a query produce a `VT15001` error, VTGate will try to rollback and clear the transaction.
|
||||
Any new queries on the same connection will fail with a `VT09032` error, until a `ROLLBACK` is received
|
||||
to acknowledge that the transaction was automatically rolled back and cleared by VTGate.
|
||||
|
||||
|
@ -358,8 +359,6 @@ While the flag will continue to accept float values (interpreted as seconds) for
|
|||
|
||||
- `--consolidator-query-waiter-cap` flag to set the maximum number of clients allowed to wait on the consolidator. The default value is set to 0 for unlimited wait. Users can adjust this value based on the performance of VTTablet to avoid excessive memory usage and the risk of being OOMKilled, particularly in Kubernetes deployments.
|
||||
|
||||
---
|
||||
|
||||
#### <a id="reloading-vttablet-acl"/>ACL enforcement and reloading</a>
|
||||
|
||||
When a tablet is started with `--enforce-tableacl-config` it will exit with an error if the contents of the file are not valid. After the changes made in [#17485](https://github.com/vitessio/vitess/pull/17485) the tablet will no longer exit when reloading the contents of the file after receiving a SIGHUP. When the file contents are invalid on reload the tablet will now log an error and the active in-memory ACLs remain in effect.
|
||||
|
|
|
@ -0,0 +1,38 @@
|
|||
# Changelog of Vitess v22.0.1
|
||||
|
||||
### Bug fixes
|
||||
#### Backup and Restore
|
||||
* [release-22.0] fix version issue when using --mysql-shell-speedup-restore=true (#18310) [#18356](https://github.com/vitessio/vitess/pull/18356)
|
||||
#### Evalengine
|
||||
* [release-22.0] fix: Preserve multi-column TupleExpr in tuple simplifier (#18216) [#18220](https://github.com/vitessio/vitess/pull/18220)
|
||||
* [release-22.0] Fix evalengine crashes on unexpected types (#18254) [#18258](https://github.com/vitessio/vitess/pull/18258)
|
||||
#### Query Serving
|
||||
* [release-22.0] make sure to give MEMBER OF the correct precedence (#18237) [#18245](https://github.com/vitessio/vitess/pull/18245)
|
||||
* [release-22.0] Fix subquery merging regression introduced in #11379 (#18260) [#18263](https://github.com/vitessio/vitess/pull/18263)
|
||||
* [release-22.0] Fix `SET` and `START TRANSACTION` in create procedure statements (#18279) [#18293](https://github.com/vitessio/vitess/pull/18293)
|
||||
* [release-22.0] fix: keep LIMIT/OFFSET even when merging UNION queries (#18361) [#18363](https://github.com/vitessio/vitess/pull/18363)
|
||||
#### Throttler
|
||||
* [release-22.0] Throttler: keep watching topo even on error (#18223) [#18322](https://github.com/vitessio/vitess/pull/18322)
|
||||
#### VReplication
|
||||
* [release-22.0] Atomic Copy: Handle error that was ignored while streaming tables and log it (#18313) [#18316](https://github.com/vitessio/vitess/pull/18316)
|
||||
#### VTTablet
|
||||
* [release-22.0] Fix deadlock in semi-sync monitor (#18276) [#18290](https://github.com/vitessio/vitess/pull/18290)
|
||||
* [release-22.0] Fix: Deadlock in `Close` and `write` in semi-sync monitor. (#18359) [#18368](https://github.com/vitessio/vitess/pull/18368)
|
||||
### CI/Build
|
||||
#### General
|
||||
* [release-22.0] Upgrade the Golang version to `go1.24.3` [#18239](https://github.com/vitessio/vitess/pull/18239)
|
||||
* [release-22.0] Upgrade the Golang version to `go1.24.4` [#18329](https://github.com/vitessio/vitess/pull/18329)
|
||||
#### VReplication
|
||||
* [release-22.0] Split workflow with flaky vdiff2 e2e test. Skip flaky Migrate test. (#18300) [#18334](https://github.com/vitessio/vitess/pull/18334)
|
||||
### Regression
|
||||
#### Query Serving
|
||||
* [release-22.0] fix: handle dml query for None opcode (#18326) [#18345](https://github.com/vitessio/vitess/pull/18345)
|
||||
### Release
|
||||
#### General
|
||||
* [release-22.0] Bump to `v22.0.1-SNAPSHOT` after the `v22.0.0` release [#18225](https://github.com/vitessio/vitess/pull/18225)
|
||||
* [release-22.0] Code Freeze for `v22.0.1` [#18374](https://github.com/vitessio/vitess/pull/18374)
|
||||
### Testing
|
||||
#### Query Serving
|
||||
* [release-22.0] test: TestQueryTimeoutWithShardTargeting fix flaky test (#18242) [#18250](https://github.com/vitessio/vitess/pull/18250)
|
||||
* [release-22.0] json array insert test (#18284) [#18286](https://github.com/vitessio/vitess/pull/18286)
|
||||
|
|
@ -0,0 +1,7 @@
|
|||
# Release of Vitess v22.0.1
|
||||
The entire changelog for this release can be found [here](https://github.com/vitessio/vitess/blob/main/changelog/22.0/22.0.1/changelog.md).
|
||||
|
||||
The release includes 19 merged Pull Requests.
|
||||
|
||||
Thanks to all our contributors: @GuptaManan100, @app/vitess-bot, @vitess-bot
|
||||
|
|
@ -1,2 +1,8 @@
|
|||
## v22.0
|
||||
* **[22.0.1](22.0.1)**
|
||||
* [Changelog](22.0.1/changelog.md)
|
||||
* [Release Notes](22.0.1/release_notes.md)
|
||||
|
||||
* **[22.0.0](22.0.0)**
|
||||
* [Changelog](22.0.0/changelog.md)
|
||||
* [Release Notes](22.0.0/release_notes.md)
|
||||
|
|
|
@ -0,0 +1,73 @@
|
|||
## Summary
|
||||
|
||||
### Table of Contents
|
||||
|
||||
- **[Minor Changes](#minor-changes)**
|
||||
- **[Deletions](#deletions)**
|
||||
- [Metrics](#deleted-metrics)
|
||||
- **[New Metrics](#new-metrics)**
|
||||
- [VTGate](#new-vtgate-metrics)
|
||||
- **[Topology](#minor-changes-topo)**
|
||||
- [`--consul_auth_static_file` requires 1 or more credentials](#consul_auth_static_file-check-creds)
|
||||
- **[VTOrc](#minor-changes-vtorc)**
|
||||
- [Recovery stats to include keyspace/shard](#recoveries-stats-keyspace-shard)
|
||||
- **[VTTablet](#minor-changes-vttablet)**
|
||||
- [CLI Flags](#flags-vttablet)
|
||||
- [Managed MySQL configuration defaults to caching-sha2-password](#mysql-caching-sha2-password)
|
||||
|
||||
## <a id="minor-changes"/>Minor Changes</a>
|
||||
|
||||
### <a id="deletions"/>Deletions</a>
|
||||
|
||||
#### <a id="deleted-metrics"/>Metrics</a>
|
||||
|
||||
| Component | Metric Name | Was Deprecated In | Deprecation PR |
|
||||
|:---------:|:-------------------------:|:-----------------:|:-------------------------------------------------------:|
|
||||
| `vtgate` | `QueriesProcessed` | `v22.0.0` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `vtgate` | `QueriesRouted` | `v22.0.0` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `vtgate` | `QueriesProcessedByTable` | `v22.0.0` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
| `vtgate` | `QueriesRoutedByTable` | `v22.0.0` | [#17727](https://github.com/vitessio/vitess/pull/17727) |
|
||||
|
||||
### <a id="new-metrics"/>New Metrics
|
||||
|
||||
#### <a id="new-vtgate-metrics"/>VTGate
|
||||
|
||||
| Name | Dimensions | Description | PR |
|
||||
|:-----------------------:|:---------------:|:-----------------------------------------------------------------------------------:|:-------------------------------------------------------:|
|
||||
| `TransactionsProcessed` | `Shard`, `Type` | Counts transactions processed at VTGate by shard distribution and transaction type. | [#18171](https://github.com/vitessio/vitess/pull/18171) |
|
||||
|
||||
### <a id="minor-changes-topo"/>Topology</a>
|
||||
|
||||
#### <a id="consul_auth_static_file-check-creds"/>`--consul_auth_static_file` requires 1 or more credentials</a>
|
||||
|
||||
The `--consul_auth_static_file` flag used in several components now requires that 1 or more credentials can be loaded from the provided json file.
|
||||
|
||||
### <a id="minor-changes-vtorc"/>VTOrc</a>
|
||||
|
||||
#### <a id="recoveries-stats-keyspace-shard">Recovery stats to include keyspace/shard</a>
|
||||
|
||||
The following recovery-related stats now include labels for keyspaces and shards:
|
||||
1. `FailedRecoveries`
|
||||
2. `PendingRecoveries`
|
||||
3. `RecoveriesCount`
|
||||
4. `SuccessfulRecoveries`
|
||||
|
||||
Previous to this release, only the recovery "type" was included in labels.
|
||||
|
||||
### <a id="minor-changes-vttablet"/>VTTablet</a>
|
||||
|
||||
#### <a id="flags-vttablet"/>CLI Flags</a>
|
||||
|
||||
- `skip-user-metrics` flag if enabled, replaces the username label with "UserLabelDisabled" to prevent metric explosion in environments with many unique users.
|
||||
|
||||
#### <a id="mysql-caching-sha2-password"/>Managed MySQL configuration defaults to caching-sha2-password</a>
|
||||
|
||||
The default authentication plugin for MySQL 8.0.26 and later is now `caching_sha2_password` instead of `mysql_native_password`. This change is made because `mysql_native_password` is deprecated and removed in future MySQL versions. `mysql_native_password` is still enabled for backwards compatibility.
|
||||
|
||||
This change specifically affects the replication user. If you have a user configured with an explicit password, it is recommended to make sure to upgrade this user after upgrading to v23 with a statement like the following:
|
||||
|
||||
```sql
|
||||
ALTER USER 'vt_repl'@'%' IDENTIFIED WITH caching_sha2_password BY 'your-existing-password';
|
||||
```
|
||||
|
||||
In future Vitess versions, the `mysql_native_password` authentication plugin will be disabled for managed MySQL instances.
|
|
@ -0,0 +1,2 @@
|
|||
## v23.0
|
||||
* **[23.0.0](23.0.0)**
|
|
@ -1,4 +1,5 @@
|
|||
## Releases
|
||||
* [23.0](23.0)
|
||||
* [22.0](22.0)
|
||||
* [21.0](21.0)
|
||||
* [20.0](20.0)
|
||||
|
|
|
@ -22,3 +22,6 @@ var MycnfMySQL8026 string
|
|||
|
||||
//go:embed mycnf/mysql84.cnf
|
||||
var MycnfMySQL84 string
|
||||
|
||||
//go:embed mycnf/mysql90.cnf
|
||||
var MycnfMySQL90 string
|
||||
|
|
|
@ -16,9 +16,6 @@ binlog_expire_logs_seconds = 259200
|
|||
# disable mysqlx
|
||||
mysqlx = 0
|
||||
|
||||
# 8.0 changes the default auth-plugin to caching_sha2_password
|
||||
default_authentication_plugin = mysql_native_password
|
||||
|
||||
# Semi-sync replication is required for automated unplanned failover
|
||||
# (when the primary goes away). Here we just load the plugin so it's
|
||||
# available if desired, but it's disabled at startup.
|
||||
|
|
|
@ -16,10 +16,9 @@ binlog_expire_logs_seconds = 259200
|
|||
# disable mysqlx
|
||||
mysqlx = 0
|
||||
|
||||
# 8.4 changes the default auth-plugin to caching_sha2_password and
|
||||
# disables mysql_native_password by default.
|
||||
# 8.4 disables mysql_native_password by default, but we keep it
|
||||
# enabled for compatibility while upgrading Vitess and / or MySQL.
|
||||
mysql_native_password = ON
|
||||
authentication_policy = 'mysql_native_password'
|
||||
|
||||
# Semi-sync replication is required for automated unplanned failover
|
||||
# (when the primary goes away). Here we just load the plugin so it's
|
||||
|
|
|
@ -0,0 +1,39 @@
|
|||
# This file is auto-included when MySQL 9.0 or later is detected.
|
||||
|
||||
# all db instances should skip starting replication threads - that way we can do any
|
||||
# additional configuration (like enabling semi-sync) before we connect to
|
||||
# the source.
|
||||
skip_replica_start
|
||||
|
||||
# MySQL 8.0 enables binlog by default with sync_binlog and TABLE info repositories
|
||||
# It does not enable GTIDs or enforced GTID consistency
|
||||
|
||||
gtid_mode = ON
|
||||
enforce_gtid_consistency
|
||||
relay_log_recovery = 1
|
||||
binlog_expire_logs_seconds = 259200
|
||||
|
||||
# disable mysqlx
|
||||
mysqlx = 0
|
||||
|
||||
# Semi-sync replication is required for automated unplanned failover
|
||||
# (when the primary goes away). Here we just load the plugin so it's
|
||||
# available if desired, but it's disabled at startup.
|
||||
#
|
||||
# VTTablet will enable semi-sync at the proper time when replication is set up,
|
||||
# or when a primary is promoted or demoted based on the durability policy configured.
|
||||
plugin-load = rpl_semi_sync_source=semisync_source.so;rpl_semi_sync_replica=semisync_replica.so
|
||||
|
||||
# MySQL 8.0.26 and later will not load plugins during --initialize
|
||||
# which makes these options unknown. Prefixing with --loose
|
||||
# tells the server it's fine if they are not understood.
|
||||
loose_rpl_semi_sync_source_timeout = 1000000000000000000
|
||||
loose_rpl_semi_sync_source_wait_no_replica = 1
|
||||
|
||||
# In order to protect against any errand GTIDs we will start the mysql instance
|
||||
# in super-read-only mode.
|
||||
super-read-only
|
||||
|
||||
# Replication parameters to ensure reparents are fast.
|
||||
replica_net_timeout = 8
|
||||
|
|
@ -1,34 +1,34 @@
|
|||
tabletID: zone-1234
|
||||
|
||||
init:
|
||||
dbName: # init_db_name_override
|
||||
keyspace: # init_keyspace
|
||||
shard: # init_shard
|
||||
tabletType: # init_tablet_type
|
||||
timeoutSeconds: 60 # init_timeout
|
||||
dbName: # init-db-name-override
|
||||
keyspace: # init-keyspace
|
||||
shard: # init-shard
|
||||
tabletType: # init-tablet-type
|
||||
timeoutSeconds: 60 # init-timeout
|
||||
|
||||
db:
|
||||
socket: # db_socket
|
||||
host: # db_host
|
||||
port: 0 # db_port
|
||||
charSet: # db_charset
|
||||
flags: 0 # db_flags
|
||||
flavor: # db_flavor
|
||||
sslCa: # db_ssl_ca
|
||||
sslCaPath: # db_ssl_ca_path
|
||||
sslCert: # db_ssl_cert
|
||||
sslKey: # db_ssl_key
|
||||
serverName: # db_server_name
|
||||
connectTimeoutMilliseconds: 0 # db_connect_timeout_ms
|
||||
socket: # db-socket
|
||||
host: # db-host
|
||||
port: 0 # db-port
|
||||
charSet: # db-charset
|
||||
flags: 0 # db-flags
|
||||
flavor: # db-flavor
|
||||
sslCa: # db-ssl-ca
|
||||
sslCaPath: # db-ssl-ca-path
|
||||
sslCert: # db-ssl-cert
|
||||
sslKey: # db-ssl-key
|
||||
serverName: # db-server-name
|
||||
connectTimeoutMilliseconds: 0 # db-connect-timeout-ms
|
||||
app:
|
||||
user: vt_app # db_app_user
|
||||
password: # db_app_password
|
||||
useSsl: true # db_app_use_ssl
|
||||
preferTcp: false
|
||||
dba:
|
||||
user: vt_dba # db_dba_user
|
||||
password: # db_dba_password
|
||||
useSsl: true # db_dba_use_ssl
|
||||
user: vt_dba # db-dba-user
|
||||
password: # db-dba-password
|
||||
useSsl: true # db-dba-use-ssl
|
||||
preferTcp: false
|
||||
filtered:
|
||||
user: vt_filtered # db_filtered_user
|
||||
|
@ -77,8 +77,8 @@ oltp:
|
|||
warnRows: 0 # queryserver-config-warn-result-size
|
||||
|
||||
healthcheck:
|
||||
intervalSeconds: 20 # health_check_interval
|
||||
degradedThresholdSeconds: 30 # degraded_threshold
|
||||
intervalSeconds: 20 # health-check-interval
|
||||
degradedThresholdSeconds: 30 # degraded-threshold
|
||||
unhealthyThresholdSeconds: 7200 # unhealthy_threshold
|
||||
|
||||
gracePeriods:
|
||||
|
@ -86,28 +86,28 @@ gracePeriods:
|
|||
transitionSeconds: 0 # serving_state_grace_period
|
||||
|
||||
replicationTracker:
|
||||
mode: disable # enable_replication_reporter
|
||||
heartbeatIntervalMilliseconds: 0 # heartbeat_enable, heartbeat_interval
|
||||
mode: disable # enable-replication-reporter
|
||||
heartbeatIntervalMilliseconds: 0 # heartbeat-enable, heartbeat-interval
|
||||
|
||||
hotRowProtection:
|
||||
mode: disable|dryRun|enable # enable_hot_row_protection, enable_hot_row_protection_dry_run
|
||||
mode: disable|dryRun|enable # enable-hot-row-protection, enable-hot-row-protection-dry-run
|
||||
# Recommended value: same as txPool.size.
|
||||
maxQueueSize: 20 # hot_row_protection_max_queue_size
|
||||
maxGlobalQueueSize: 1000 # hot_row_protection_max_global_queue_size
|
||||
maxConcurrency: 5 # hot_row_protection_concurrent_transactions
|
||||
maxQueueSize: 20 # hot-row-protection-max-queue-size
|
||||
maxGlobalQueueSize: 1000 # hot-row-protection-max-global-queue-size
|
||||
maxConcurrency: 5 # hot-row-protection-concurrent-transactions
|
||||
|
||||
consolidator: enable|disable|notOnPrimary # enable-consolidator, enable-consolidator-replicas
|
||||
passthroughDML: false # queryserver-config-passthrough-dmls
|
||||
streamBufferSize: 32768 # queryserver-config-stream-buffer-size
|
||||
schemaReloadIntervalSeconds: 1800 # queryserver-config-schema-reload-time
|
||||
watchReplication: false # watch_replication_stream
|
||||
watchReplication: false # watch-replication-stream
|
||||
terseErrors: false # queryserver-config-terse-errors
|
||||
truncateErrorLen: 0 # queryserver-config-truncate-error-len
|
||||
messagePostponeParallelism: 4 # queryserver-config-message-postpone-cap
|
||||
|
||||
|
||||
# The following flags are currently not supported.
|
||||
# enforce_strict_trans_tables
|
||||
# enforce-strict-trans-tables
|
||||
# queryserver-config-strict-table-acl
|
||||
# queryserver-config-enable-table-acl-dry-run
|
||||
# queryserver-config-acl-exempt-acl
|
||||
|
@ -115,10 +115,10 @@ messagePostponeParallelism: 4 # queryserver-config-message-postpone-c
|
|||
# tx-throttler-config
|
||||
# tx-throttler-healthcheck-cells
|
||||
# tx-throttler-tablet-types
|
||||
# enable_transaction_limit
|
||||
# enable_transaction_limit_dry_run
|
||||
# transaction_limit_per_user
|
||||
# transaction_limit_by_username
|
||||
# transaction_limit_by_principal
|
||||
# transaction_limit_by_component
|
||||
# transaction_limit_by_subcomponent
|
||||
# enable-transaction-limit
|
||||
# enable-transaction-limit-dry-run
|
||||
# transaction-limit-per-user
|
||||
# transaction-limit-by-username
|
||||
# transaction-limit-by-principal
|
||||
# transaction-limit-by-component
|
||||
# transaction-limit-by-subcomponent
|
||||
|
|
|
@ -15,7 +15,7 @@ The implementations of `LockShard` and `CheckShardLocked` differ slightly for al
|
|||
|
||||
### Etcd
|
||||
|
||||
In Etcd implementation, we use `KeepAlive` API to keep renewing the context that we have for acquiring the shard lock every 10 seconds. The duration of the lease is controlled by the `--topo_etcd_lease_ttl` flag which defaults to 10 seconds. Once we acquire the shard lock, the context for acquiring the shard lock expires and that stops the KeepAlives too.
|
||||
In Etcd implementation, we use `KeepAlive` API to keep renewing the context that we have for acquiring the shard lock every 10 seconds. The duration of the lease is controlled by the `--topo-etcd-lease-ttl` flag which defaults to 10 seconds. Once we acquire the shard lock, the context for acquiring the shard lock expires and that stops the KeepAlives too.
|
||||
|
||||
The shard lock is released either when the unlock function is called, or if the lease ttl expires. This guards against servers crashing while holding the shard lock.
|
||||
|
||||
|
@ -30,6 +30,6 @@ The Check function doesn't do anything in ZooKeeper. The implementation just ret
|
|||
|
||||
### Consul
|
||||
|
||||
In Consul, the timeout for the lock is controlled by the `--topo_consul_lock_session_ttl` flag.
|
||||
In Consul, the timeout for the lock is controlled by the `--topo-consul-lock-session-ttl` flag.
|
||||
|
||||
The Check function works properly and checks if the lock still exists.
|
|
@ -170,4 +170,16 @@ List of changes between bootstrap image versions.
|
|||
|
||||
## [43] - 2025-03-04
|
||||
### Changes
|
||||
- Update build to golang 1.24.1
|
||||
- Update build to golang 1.24.1
|
||||
|
||||
## [44] - 2025-04-02
|
||||
### Changes
|
||||
- Update build to golang 1.24.2
|
||||
|
||||
## [45] - 2025-05-07
|
||||
### Changes
|
||||
- Update build to golang 1.24.3
|
||||
|
||||
## [46] - 2025-06-06
|
||||
### Changes
|
||||
- Update build to golang 1.24.4
|
|
@ -1,4 +1,4 @@
|
|||
FROM --platform=linux/amd64 golang:1.24.1-bookworm
|
||||
FROM --platform=linux/amd64 golang:1.24.4-bookworm
|
||||
|
||||
# Install Vitess build dependencies
|
||||
RUN apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends \
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM --platform=linux/amd64 golang:1.24.1-bookworm AS builder
|
||||
FROM --platform=linux/amd64 golang:1.24.4-bookworm AS builder
|
||||
|
||||
# Allows docker builds to set the BUILD_NUMBER
|
||||
ARG BUILD_NUMBER
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM --platform=linux/amd64 golang:1.24.1-bookworm AS builder
|
||||
FROM --platform=linux/amd64 golang:1.24.4-bookworm AS builder
|
||||
|
||||
# Allows docker builds to set the BUILD_NUMBER
|
||||
ARG BUILD_NUMBER
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM --platform=linux/amd64 golang:1.24.1-bookworm AS builder
|
||||
FROM --platform=linux/amd64 golang:1.24.4-bookworm AS builder
|
||||
|
||||
# Allows docker builds to set the BUILD_NUMBER
|
||||
ARG BUILD_NUMBER
|
||||
|
|
|
@ -23,6 +23,7 @@ grpc_port=15999
|
|||
|
||||
echo "- Starting vtctld..."
|
||||
# shellcheck disable=SC2086
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
vtctld \
|
||||
$TOPOLOGY_FLAGS \
|
||||
--disable_active_reparents \
|
||||
|
|
|
@ -39,6 +39,7 @@ echo "> Starting vttablet for server $mysql_host:$mysql_port"
|
|||
echo " - Tablet alias is $alias"
|
||||
echo " - Tablet listens on http://$hostname:$port"
|
||||
# shellcheck disable=SC2086
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
vttablet \
|
||||
$TOPOLOGY_FLAGS \
|
||||
-log_dir $VTDATAROOT/tmp \
|
||||
|
|
|
@ -141,6 +141,10 @@ args="$args -v /tmp/mavencache:/home/vitess/.m2"
|
|||
args="$args --user vitess"
|
||||
args="$args -v $PWD/test/bin:/tmp/bin"
|
||||
|
||||
# Pass through TOPO environment variable if it's set
|
||||
if [[ -n "$TOPO" ]]; then
|
||||
args="$args -e TOPO=$TOPO"
|
||||
fi
|
||||
# Mount in host VTDATAROOT if one exists, since it might be a RAM disk or SSD.
|
||||
if [[ -n "$VTDATAROOT" ]]; then
|
||||
hostdir=`mktemp -d $VTDATAROOT/test-XXX`
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM --platform=linux/amd64 golang:1.24.1-bookworm AS builder
|
||||
FROM --platform=linux/amd64 golang:1.24.4-bookworm AS builder
|
||||
|
||||
# Allows docker builds to set the BUILD_NUMBER
|
||||
ARG BUILD_NUMBER
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
# See the License for the specific language governing permissions and
|
||||
# limitations under the License.
|
||||
|
||||
FROM --platform=linux/amd64 golang:1.24.1-bookworm AS builder
|
||||
FROM --platform=linux/amd64 golang:1.24.4-bookworm AS builder
|
||||
|
||||
# Allows docker builds to set the BUILD_NUMBER
|
||||
ARG BUILD_NUMBER
|
||||
|
|
|
@ -36,7 +36,7 @@ rm -vf "$VTDATAROOT"/"$tablet_dir"/{mysql.sock,mysql.sock.lock}
|
|||
--num_shards "$NUM_SHARDS" \
|
||||
--mysql_bind_host "${MYSQL_BIND_HOST:-127.0.0.1}" \
|
||||
--vtcombo-bind-host "${VTCOMBO_BIND_HOST:-127.0.0.1}" \
|
||||
--mysql_server_version "${MYSQL_SERVER_VERSION:-$1}" \
|
||||
--mysql-server-version "${MYSQL_SERVER_VERSION:-$1}" \
|
||||
--charset "${CHARSET:-utf8mb4}" \
|
||||
--foreign_key_mode "${FOREIGN_KEY_MODE:-allow}" \
|
||||
--enable_online_ddl="${ENABLE_ONLINE_DDL:-true}" \
|
||||
|
|
|
@ -53,6 +53,7 @@ if [ "${TOPO}" = "zk2" ]; then
|
|||
# Set topology environment parameters.
|
||||
ZK_SERVER="localhost:21811,localhost:21812,localhost:21813"
|
||||
# shellcheck disable=SC2034
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
TOPOLOGY_FLAGS="--topo_implementation zk2 --topo_global_server_address ${ZK_SERVER} --topo_global_root /vitess/global"
|
||||
|
||||
mkdir -p "${VTDATAROOT}/tmp"
|
||||
|
@ -61,10 +62,12 @@ elif [ "${TOPO}" = "consul" ]; then
|
|||
CONSUL_SERVER=127.0.0.1
|
||||
CONSUL_HTTP_PORT=8500
|
||||
CONSUL_SERVER_PORT=8300
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
TOPOLOGY_FLAGS="--topo_implementation consul --topo_global_server_address ${CONSUL_SERVER}:${CONSUL_HTTP_PORT} --topo_global_root vitess/global/"
|
||||
mkdir -p "${VTDATAROOT}/consul"
|
||||
else
|
||||
ETCD_SERVER="localhost:2379"
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
TOPOLOGY_FLAGS="--topo_implementation etcd2 --topo_global_server_address $ETCD_SERVER --topo_global_root /vitess/global"
|
||||
|
||||
mkdir -p "${VTDATAROOT}/etcd"
|
||||
|
|
|
@ -24,5 +24,6 @@ uid=$TABLET_UID
|
|||
printf -v alias '%s-%010d' $cell $uid
|
||||
echo "Shutting down MySQL for tablet $alias..."
|
||||
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
mysqlctl --tablet_uid $uid shutdown
|
||||
|
||||
|
|
|
@ -35,6 +35,7 @@ if [ -d $VTDATAROOT/$tablet_dir ]; then
|
|||
action='start'
|
||||
fi
|
||||
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
mysqlctl \
|
||||
--log_dir $VTDATAROOT/tmp \
|
||||
--tablet_uid $uid \
|
||||
|
|
|
@ -23,6 +23,7 @@ grpc_port=15999
|
|||
|
||||
echo "Starting vtctld..."
|
||||
# shellcheck disable=SC2086
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
vtctld \
|
||||
$TOPOLOGY_FLAGS \
|
||||
--cell $cell \
|
||||
|
|
|
@ -26,6 +26,7 @@ mysql_server_socket_path="/tmp/mysql.sock"
|
|||
|
||||
echo "Starting vtgate..."
|
||||
# shellcheck disable=SC2086
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
vtgate \
|
||||
$TOPOLOGY_FLAGS \
|
||||
--log_dir $VTDATAROOT/tmp \
|
||||
|
@ -36,7 +37,7 @@ vtgate \
|
|||
--mysql_server_socket_path $mysql_server_socket_path \
|
||||
--cell $cell \
|
||||
--cells_to_watch $cell \
|
||||
--tablet_types_to_wait PRIMARY,REPLICA \
|
||||
--tablet-types-to-wait PRIMARY,REPLICA \
|
||||
--service_map 'grpc-vtgateservice' \
|
||||
--pid_file $VTDATAROOT/tmp/vtgate.pid \
|
||||
--enable_buffer \
|
||||
|
|
|
@ -18,6 +18,10 @@
|
|||
|
||||
source "$(dirname "${BASH_SOURCE[0]:-$0}")/../env.sh"
|
||||
|
||||
# Explicitly set VTROOT for this script, since it requires it.
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]:-$0}")" && pwd)"
|
||||
export VTROOT=${VTROOT:-$(cd "$SCRIPT_DIR/../../.." && pwd)}
|
||||
|
||||
# Stop ZooKeeper servers.
|
||||
echo "Stopping zk servers..."
|
||||
for zkid in $zkids; do
|
||||
|
|
|
@ -18,6 +18,10 @@
|
|||
|
||||
source "$(dirname "${BASH_SOURCE[0]:-$0}")/../env.sh"
|
||||
|
||||
# Explicitly set VTROOT for this script, since it requires it.
|
||||
SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]:-$0}")" && pwd)"
|
||||
export VTROOT=${VTROOT:-$(cd "$SCRIPT_DIR/../../.." && pwd)}
|
||||
|
||||
cell=${CELL:-'test'}
|
||||
# Start ZooKeeper servers.
|
||||
# The "zkctl init" command won't return until the server is able to contact its
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500 --topo_global_root vitess/global
|
||||
TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500 --topo-global-root vitess/global
|
||||
GRPC_PORT=15999
|
||||
WEB_PORT=8080
|
||||
MYSQL_PORT=15306
|
||||
|
|
|
@ -63,14 +63,15 @@ services:
|
|||
- "15000:$WEB_PORT"
|
||||
- "$GRPC_PORT"
|
||||
command: ["sh", "-c", " /vt/bin/vtctld \
|
||||
# TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
$TOPOLOGY_FLAGS \
|
||||
--cell $CELL \
|
||||
--service_map 'grpc-vtctl,grpc-vtctld' \
|
||||
--backup_storage_implementation file \
|
||||
--service-map 'grpc-vtctl,grpc-vtctld' \
|
||||
--backup-storage-implementation file \
|
||||
--file_backup_storage_root /vt/vtdataroot/backups \
|
||||
--logtostderr=true \
|
||||
--port $WEB_PORT \
|
||||
--grpc_port $GRPC_PORT
|
||||
--grpc-port $GRPC_PORT
|
||||
"]
|
||||
depends_on:
|
||||
consul1:
|
||||
|
@ -89,16 +90,17 @@ services:
|
|||
- "$GRPC_PORT"
|
||||
- "15306:$MYSQL_PORT"
|
||||
command: ["sh", "-c", "/vt/bin/vtgate \
|
||||
# TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
$TOPOLOGY_FLAGS \
|
||||
--logtostderr=true \
|
||||
--port $WEB_PORT \
|
||||
--grpc_port $GRPC_PORT \
|
||||
--mysql_server_port $MYSQL_PORT \
|
||||
--mysql_auth_server_impl none \
|
||||
--grpc-port $GRPC_PORT \
|
||||
--mysql-server-port $MYSQL_PORT \
|
||||
--mysql-auth-server-impl none \
|
||||
--cell $CELL \
|
||||
--cells_to_watch $CELL \
|
||||
--tablet_types_to_wait PRIMARY,REPLICA \
|
||||
--service_map 'grpc-vtgateservice' \
|
||||
--tablet-types-to-wait PRIMARY,REPLICA \
|
||||
--service-map 'grpc-vtgateservice' \
|
||||
--enable_system_settings=true \
|
||||
"]
|
||||
volumes:
|
||||
|
|
|
@ -63,8 +63,8 @@ services:
|
|||
vttablet301:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -89,8 +89,8 @@ services:
|
|||
vttablet201:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -126,8 +126,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- EXTERNAL_DB=0
|
||||
image: vitess/lite:${VITESS_TAG:-latest}
|
||||
volumes:
|
||||
|
@ -136,10 +136,10 @@ services:
|
|||
command:
|
||||
- sh
|
||||
- -c
|
||||
- ' /vt/bin/vtctld --topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global --cell test
|
||||
--service_map ''grpc-vtctl,grpc-vtctld'' --backup_storage_implementation file --file_backup_storage_root
|
||||
/vt/vtdataroot/backups --logtostderr=true --port 8080 --grpc_port 15999 '
|
||||
- ' /vt/bin/vtctld --topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global --cell test
|
||||
--service-map ''grpc-vtctl,grpc-vtctld'' --backup-storage-implementation file --file_backup_storage_root
|
||||
/vt/vtdataroot/backups --logtostderr=true --port 8080 --grpc-port 15999 '
|
||||
depends_on:
|
||||
external_db_host:
|
||||
condition: service_healthy
|
||||
|
@ -153,11 +153,11 @@ services:
|
|||
command:
|
||||
- sh
|
||||
- -c
|
||||
- '/script/run-forever.sh /vt/bin/vtgate --topo_implementation consul --topo_global_server_address
|
||||
consul1:8500 --topo_global_root vitess/global --logtostderr=true --port 8080 --grpc_port
|
||||
15999 --mysql_server_port 15306 --mysql_auth_server_impl none --cell test --cells_to_watch
|
||||
test --tablet_types_to_wait PRIMARY,REPLICA,RDONLY --service_map ''grpc-vtgateservice''
|
||||
--normalize_queries=true '
|
||||
- '/script/run-forever.sh /vt/bin/vtgate --topo-implementation consul --topo-global-server-address
|
||||
consul1:8500 --topo-global-root vitess/global --logtostderr=true --port 8080 --grpc-port
|
||||
15999 --mysql-server-port 15306 --mysql-auth-server-impl none --cell test --cells_to_watch
|
||||
test --tablet-types-to-wait PRIMARY,REPLICA,RDONLY --service-map ''grpc-vtgateservice''
|
||||
--normalize-queries=true '
|
||||
depends_on:
|
||||
- vtctld
|
||||
image: vitess/lite:${VITESS_TAG:-latest}
|
||||
|
@ -176,8 +176,8 @@ services:
|
|||
- vtctld
|
||||
- set_keyspace_durability_policy
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- EXTERNAL_DB=0
|
||||
- DB_USER=
|
||||
|
@ -195,8 +195,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -232,8 +232,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -269,8 +269,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -306,8 +306,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -343,8 +343,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -380,8 +380,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500 --topo_global_root vitess/global
|
||||
TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500 --topo-global-root vitess/global
|
||||
GRPC_PORT=15999
|
||||
WEB_PORT=8080
|
||||
MYSQL_PORT=15306
|
||||
|
|
|
@ -67,8 +67,8 @@ services:
|
|||
vttablet201:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -91,8 +91,8 @@ services:
|
|||
vttablet301:
|
||||
condition: service_healthy
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -141,8 +141,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- EXTERNAL_DB=0
|
||||
image: vitess/lite:${VITESS_TAG:-latest}
|
||||
volumes:
|
||||
|
@ -151,11 +151,11 @@ services:
|
|||
command:
|
||||
- sh
|
||||
- -c
|
||||
- ' /vt/bin/vtctld --topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global --cell test
|
||||
--service_map ''grpc-vtctl,grpc-vtctld'' --backup_storage_implementation file
|
||||
--file_backup_storage_root /vt/vtdataroot/backups --logtostderr=true --port
|
||||
8080 --grpc_port 15999 '
|
||||
- ' /vt/bin/vtctld --topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global --cell test
|
||||
--service-map ''grpc-vtctl,grpc-vtctld'' --backup-storage-implementation file
|
||||
--file_backup_storage_root /vt/vtdataroot/backups --logtostderr=true --port
|
||||
8080 --grpc-port 15999 '
|
||||
depends_on:
|
||||
external_db_host:
|
||||
condition: service_healthy
|
||||
|
@ -169,11 +169,11 @@ services:
|
|||
command:
|
||||
- sh
|
||||
- -c
|
||||
- '/script/run-forever.sh /vt/bin/vtgate --topo_implementation consul --topo_global_server_address
|
||||
consul1:8500 --topo_global_root vitess/global --logtostderr=true --port 8080
|
||||
--grpc_port 15999 --mysql_server_port 15306 --mysql_auth_server_impl none --cell
|
||||
test --cells_to_watch test --tablet_types_to_wait PRIMARY,REPLICA,RDONLY --service_map
|
||||
''grpc-vtgateservice'' --normalize_queries=true '
|
||||
- '/script/run-forever.sh /vt/bin/vtgate --topo-implementation consul --topo-global-server-address
|
||||
consul1:8500 --topo-global-root vitess/global --logtostderr=true --port 8080
|
||||
--grpc-port 15999 --mysql-server-port 15306 --mysql-auth-server-impl none --cell
|
||||
test --cells_to_watch test --tablet-types-to-wait PRIMARY,REPLICA,RDONLY --service-map
|
||||
''grpc-vtgateservice'' --normalize-queries=true '
|
||||
depends_on:
|
||||
- vtctld
|
||||
image: vitess/lite:${VITESS_TAG:-latest}
|
||||
|
@ -194,8 +194,8 @@ services:
|
|||
- vtctld
|
||||
environment:
|
||||
- WEB_PORT=8080
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- EXTERNAL_DB=0
|
||||
- DB_USER=
|
||||
- DB_PASS=
|
||||
|
@ -212,8 +212,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -249,8 +249,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -286,8 +286,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -323,8 +323,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
@ -360,8 +360,8 @@ services:
|
|||
depends_on:
|
||||
- vtctld
|
||||
environment:
|
||||
- TOPOLOGY_FLAGS=--topo_implementation consul --topo_global_server_address consul1:8500
|
||||
--topo_global_root vitess/global
|
||||
- TOPOLOGY_FLAGS=--topo-implementation consul --topo-global-server-address consul1:8500
|
||||
--topo-global-root vitess/global
|
||||
- WEB_PORT=8080
|
||||
- GRPC_PORT=15999
|
||||
- CELL=test
|
||||
|
|
|
@ -46,7 +46,7 @@ const (
|
|||
cellUsage = "Vitess Cell name"
|
||||
DefaultExternalDbData = ""
|
||||
externalDbDataUsage = "List of Data corresponding to external DBs. List of <external_db_name>,<DB_HOST>,<DB_PORT>,<DB_USER>,<DB_PASS>,<DB_CHARSET> separated by ';'"
|
||||
DefaultTopologyFlags = "--topo_implementation consul --topo_global_server_address consul1:8500 --topo_global_root vitess/global"
|
||||
DefaultTopologyFlags = "--topo-implementation consul --topo-global-server-address consul1:8500 --topo-global-root vitess/global"
|
||||
topologyFlagsUsage = "Vitess Topology Flags config"
|
||||
)
|
||||
|
||||
|
@ -632,12 +632,12 @@ func generateVtctld(opts vtOptions) string {
|
|||
command: ["sh", "-c", " /vt/bin/vtctld \
|
||||
%[3]s \
|
||||
--cell %[4]s \
|
||||
--service_map 'grpc-vtctl,grpc-vtctld' \
|
||||
--backup_storage_implementation file \
|
||||
--service-map 'grpc-vtctl,grpc-vtctld' \
|
||||
--backup-storage-implementation file \
|
||||
--file_backup_storage_root /vt/vtdataroot/backups \
|
||||
--logtostderr=true \
|
||||
--port %[1]d \
|
||||
--grpc_port %[2]d \
|
||||
--grpc-port %[2]d \
|
||||
"]
|
||||
volumes:
|
||||
- .:/script
|
||||
|
@ -665,14 +665,14 @@ func generateVtgate(opts vtOptions) string {
|
|||
%[4]s \
|
||||
--logtostderr=true \
|
||||
--port %[1]d \
|
||||
--grpc_port %[2]d \
|
||||
--mysql_server_port %[3]d \
|
||||
--mysql_auth_server_impl none \
|
||||
--grpc-port %[2]d \
|
||||
--mysql-server-port %[3]d \
|
||||
--mysql-auth-server-impl none \
|
||||
--cell %[5]s \
|
||||
--cells_to_watch %[5]s \
|
||||
--tablet_types_to_wait PRIMARY,REPLICA,RDONLY \
|
||||
--service_map 'grpc-vtgateservice' \
|
||||
--normalize_queries=true \
|
||||
--tablet-types-to-wait PRIMARY,REPLICA,RDONLY \
|
||||
--service-map 'grpc-vtgateservice' \
|
||||
--normalize-queries=true \
|
||||
"]
|
||||
volumes:
|
||||
- .:/script
|
||||
|
|
|
@ -95,6 +95,7 @@ rm -rf $VTDATAROOT/$tablet_dir/{mysql.sock,mysql.sock.lock}
|
|||
|
||||
# Create mysql instances
|
||||
# Do not create mysql instance for primary if connecting to external mysql database
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
if [[ $tablet_role != "externalprimary" ]]; then
|
||||
echo "Initing mysql for tablet: $uid role: $role external: $external.. "
|
||||
$VTROOT/bin/mysqlctld \
|
||||
|
@ -142,7 +143,7 @@ else
|
|||
--restore_from_backup"
|
||||
fi
|
||||
|
||||
|
||||
#TODO: Remove underscore(_) flags in v25, replace them with dashed(-) notation
|
||||
echo "Starting vttablet..."
|
||||
exec $VTROOT/bin/vttablet \
|
||||
$TOPOLOGY_FLAGS \
|
||||
|
|
|
@ -44,7 +44,7 @@ spec:
|
|||
cells:
|
||||
- zone1
|
||||
extraFlags:
|
||||
security_policy: read-only
|
||||
security-policy: read-only
|
||||
replicas: 1
|
||||
resources:
|
||||
limits:
|
||||
|
@ -101,7 +101,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
|
|
@ -40,7 +40,7 @@ spec:
|
|||
cells:
|
||||
- zone1
|
||||
extraFlags:
|
||||
security_policy: read-only
|
||||
security-policy: read-only
|
||||
replicas: 1
|
||||
resources:
|
||||
limits:
|
||||
|
@ -97,7 +97,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
@ -132,7 +132,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
|
|
@ -40,7 +40,7 @@ spec:
|
|||
cells:
|
||||
- zone1
|
||||
extraFlags:
|
||||
security_policy: read-only
|
||||
security-policy: read-only
|
||||
replicas: 1
|
||||
resources:
|
||||
limits:
|
||||
|
@ -97,7 +97,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
@ -132,7 +132,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
@ -163,7 +163,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
|
|
@ -40,7 +40,7 @@ spec:
|
|||
cells:
|
||||
- zone1
|
||||
extraFlags:
|
||||
security_policy: read-only
|
||||
security-policy: read-only
|
||||
replicas: 1
|
||||
resources:
|
||||
limits:
|
||||
|
@ -97,7 +97,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
@ -132,7 +132,7 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
db-charset: utf8mb4
|
||||
resources:
|
||||
limits:
|
||||
memory: 256Mi
|
||||
|
|
|
@ -74,7 +74,7 @@ spec:
|
|||
cells:
|
||||
- zone1
|
||||
extraFlags:
|
||||
security_policy: read-only
|
||||
security-policy: read-only
|
||||
replicas: 1
|
||||
resources:
|
||||
limits:
|
||||
|
@ -131,8 +131,8 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
wait_for_backup_interval: "0"
|
||||
db-charset: utf8mb4
|
||||
wait-for-backup-interval: "0"
|
||||
resources:
|
||||
limits:
|
||||
memory: 1024Mi
|
||||
|
@ -167,8 +167,8 @@ spec:
|
|||
replicas: 2
|
||||
vttablet:
|
||||
extraFlags:
|
||||
db_charset: utf8mb4
|
||||
wait_for_backup_interval: "0"
|
||||
db-charset: utf8mb4
|
||||
wait-for-backup-interval: "0"
|
||||
resources:
|
||||
limits:
|
||||
memory: 1024Mi
|
||||
|
|
|
@ -3894,6 +3894,10 @@ spec:
|
|||
type: object
|
||||
mysqldExporter:
|
||||
properties:
|
||||
extraFlags:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
resources:
|
||||
properties:
|
||||
claims:
|
||||
|
@ -3927,8 +3931,6 @@ spec:
|
|||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- resources
|
||||
type: object
|
||||
name:
|
||||
default: ""
|
||||
|
@ -4335,6 +4337,10 @@ spec:
|
|||
type: object
|
||||
mysqldExporter:
|
||||
properties:
|
||||
extraFlags:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
resources:
|
||||
properties:
|
||||
claims:
|
||||
|
@ -4368,8 +4374,6 @@ spec:
|
|||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- resources
|
||||
type: object
|
||||
name:
|
||||
default: ""
|
||||
|
@ -4980,6 +4984,8 @@ spec:
|
|||
type: array
|
||||
extraVolumes:
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
fetchCredentials:
|
||||
type: string
|
||||
initContainers:
|
||||
x-kubernetes-preserve-unknown-fields: true
|
||||
rbac:
|
||||
|
@ -5713,6 +5719,10 @@ spec:
|
|||
type: object
|
||||
mysqldExporter:
|
||||
properties:
|
||||
extraFlags:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
resources:
|
||||
properties:
|
||||
claims:
|
||||
|
@ -5746,8 +5756,6 @@ spec:
|
|||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- resources
|
||||
type: object
|
||||
name:
|
||||
default: ""
|
||||
|
@ -6154,6 +6162,10 @@ spec:
|
|||
type: object
|
||||
mysqldExporter:
|
||||
properties:
|
||||
extraFlags:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
resources:
|
||||
properties:
|
||||
claims:
|
||||
|
@ -6187,8 +6199,6 @@ spec:
|
|||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- resources
|
||||
type: object
|
||||
name:
|
||||
default: ""
|
||||
|
@ -7148,6 +7158,10 @@ spec:
|
|||
type: object
|
||||
mysqldExporter:
|
||||
properties:
|
||||
extraFlags:
|
||||
additionalProperties:
|
||||
type: string
|
||||
type: object
|
||||
resources:
|
||||
properties:
|
||||
claims:
|
||||
|
@ -7181,8 +7195,6 @@ spec:
|
|||
x-kubernetes-int-or-string: true
|
||||
type: object
|
||||
type: object
|
||||
required:
|
||||
- resources
|
||||
type: object
|
||||
name:
|
||||
default: ""
|
||||
|
|
148
go.mod
148
go.mod
|
@ -1,9 +1,9 @@
|
|||
module vitess.io/vitess
|
||||
|
||||
go 1.24.1
|
||||
go 1.24.4
|
||||
|
||||
require (
|
||||
cloud.google.com/go/storage v1.51.0
|
||||
cloud.google.com/go/storage v1.54.0
|
||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6
|
||||
github.com/Azure/azure-pipeline-go v0.2.3
|
||||
github.com/Azure/azure-storage-blob-go v0.15.0
|
||||
|
@ -15,9 +15,9 @@ require (
|
|||
github.com/corpix/uarand v0.1.1 // indirect
|
||||
github.com/dave/jennifer v1.7.1
|
||||
github.com/evanphx/json-patch v5.9.11+incompatible
|
||||
github.com/fsnotify/fsnotify v1.8.0
|
||||
github.com/fsnotify/fsnotify v1.9.0
|
||||
github.com/go-sql-driver/mysql v1.7.1
|
||||
github.com/golang/glog v1.2.4
|
||||
github.com/golang/glog v1.2.5
|
||||
github.com/golang/protobuf v1.5.4 // indirect
|
||||
github.com/golang/snappy v1.0.0
|
||||
github.com/google/go-cmp v0.7.0
|
||||
|
@ -27,60 +27,59 @@ require (
|
|||
github.com/gorilla/mux v1.8.1
|
||||
github.com/grpc-ecosystem/go-grpc-middleware v1.4.0
|
||||
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0
|
||||
github.com/hashicorp/consul/api v1.31.2
|
||||
github.com/hashicorp/consul/api v1.32.1
|
||||
github.com/hashicorp/go-immutable-radix v1.3.1 // indirect
|
||||
github.com/hashicorp/serf v0.10.2 // indirect
|
||||
github.com/icrowley/fake v0.0.0-20180203215853-4178557ae428
|
||||
github.com/klauspost/compress v1.18.0
|
||||
github.com/klauspost/pgzip v1.2.6
|
||||
github.com/krishicks/yaml-patch v0.0.10
|
||||
github.com/magiconair/properties v1.8.9 // indirect
|
||||
github.com/minio/minio-go v0.0.0-20190131015406-c8a261de75c1
|
||||
github.com/montanaflynn/stats v0.7.1
|
||||
github.com/olekukonko/tablewriter v0.0.5
|
||||
github.com/opentracing-contrib/go-grpc v0.1.1
|
||||
github.com/opentracing-contrib/go-grpc v0.1.2
|
||||
github.com/opentracing/opentracing-go v1.2.0
|
||||
github.com/patrickmn/go-cache v2.1.0+incompatible
|
||||
github.com/philhofer/fwd v1.1.3-0.20240916144458-20a13a1f6b7c // indirect
|
||||
github.com/pierrec/lz4 v2.6.1+incompatible
|
||||
github.com/pires/go-proxyproto v0.8.0
|
||||
github.com/pires/go-proxyproto v0.8.1
|
||||
github.com/pkg/errors v0.9.1 // indirect
|
||||
github.com/planetscale/pargzip v0.0.0-20201116224723-90c7fc03ea8a
|
||||
github.com/planetscale/vtprotobuf v0.6.1-0.20241121165744-79df5c4772f2
|
||||
github.com/prometheus/client_golang v1.21.1
|
||||
github.com/prometheus/client_golang v1.22.0
|
||||
github.com/prometheus/common v0.63.0
|
||||
github.com/sjmudd/stopwatch v0.1.1
|
||||
github.com/soheilhy/cmux v0.1.5
|
||||
github.com/spf13/cobra v1.9.1
|
||||
github.com/spf13/pflag v1.0.6
|
||||
github.com/spf13/viper v1.19.0
|
||||
github.com/spf13/viper v1.20.1
|
||||
github.com/stretchr/testify v1.10.0
|
||||
github.com/tchap/go-patricia v2.3.0+incompatible
|
||||
github.com/tidwall/gjson v1.18.0
|
||||
github.com/tinylib/msgp v1.2.5 // indirect
|
||||
github.com/tinylib/msgp v1.3.0 // indirect
|
||||
github.com/uber/jaeger-client-go v2.30.0+incompatible
|
||||
github.com/uber/jaeger-lib v2.4.1+incompatible // indirect
|
||||
github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82
|
||||
github.com/z-division/go-zookeeper v1.0.0
|
||||
go.etcd.io/etcd/api/v3 v3.5.19
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.19
|
||||
go.etcd.io/etcd/client/v3 v3.5.19
|
||||
go.etcd.io/etcd/api/v3 v3.5.21
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.21
|
||||
go.etcd.io/etcd/client/v3 v3.5.21
|
||||
go.uber.org/mock v0.5.0
|
||||
golang.org/x/crypto v0.36.0 // indirect
|
||||
golang.org/x/crypto v0.38.0 // indirect
|
||||
golang.org/x/mod v0.24.0 // indirect
|
||||
golang.org/x/net v0.37.0
|
||||
golang.org/x/oauth2 v0.28.0
|
||||
golang.org/x/sys v0.31.0
|
||||
golang.org/x/term v0.30.0
|
||||
golang.org/x/text v0.23.0 // indirect
|
||||
golang.org/x/net v0.40.0
|
||||
golang.org/x/oauth2 v0.30.0
|
||||
golang.org/x/sys v0.33.0
|
||||
golang.org/x/term v0.32.0
|
||||
golang.org/x/text v0.25.0 // indirect
|
||||
golang.org/x/time v0.11.0
|
||||
golang.org/x/tools v0.31.0
|
||||
google.golang.org/api v0.226.0
|
||||
google.golang.org/genproto v0.0.0-20250313205543-e70fdf4c4cb4 // indirect
|
||||
google.golang.org/grpc v1.71.0
|
||||
golang.org/x/tools v0.33.0
|
||||
google.golang.org/api v0.233.0
|
||||
google.golang.org/genproto v0.0.0-20250512202823-5a2f75b736a9 // indirect
|
||||
google.golang.org/grpc v1.72.1
|
||||
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.5.1
|
||||
google.golang.org/grpc/examples v0.0.0-20250204041003-947e2a4be2ba
|
||||
google.golang.org/protobuf v1.36.5
|
||||
google.golang.org/protobuf v1.36.6
|
||||
gopkg.in/DataDog/dd-trace-go.v1 v1.69.1
|
||||
gopkg.in/asn1-ber.v1 v1.0.0-20181015200546-f715ec2f112d // indirect
|
||||
gopkg.in/ldap.v2 v2.5.1
|
||||
|
@ -89,11 +88,11 @@ require (
|
|||
|
||||
require (
|
||||
github.com/DataDog/datadog-go/v5 v5.6.0
|
||||
github.com/Shopify/toxiproxy/v2 v2.11.0
|
||||
github.com/Shopify/toxiproxy/v2 v2.12.0
|
||||
github.com/aws/aws-sdk-go-v2 v1.36.3
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.9
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.66
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.78.2
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.14
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.75
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.79.3
|
||||
github.com/aws/smithy-go v1.22.3
|
||||
github.com/bndr/gotabulate v1.1.2
|
||||
github.com/dustin/go-humanize v1.0.1
|
||||
|
@ -104,29 +103,40 @@ require (
|
|||
github.com/kr/text v0.2.0
|
||||
github.com/mitchellh/mapstructure v1.5.1-0.20231216201459-8508981c8b6c
|
||||
github.com/nsf/jsondiff v0.0.0-20210926074059-1e845ec5d249
|
||||
github.com/spf13/afero v1.12.0
|
||||
github.com/shirou/gopsutil/v4 v4.25.4
|
||||
github.com/spf13/afero v1.14.0
|
||||
github.com/spf13/jwalterweatherman v1.1.0
|
||||
github.com/xlab/treeprint v1.2.0
|
||||
go.uber.org/goleak v1.3.0
|
||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394
|
||||
golang.org/x/sync v0.12.0
|
||||
golang.org/x/exp v0.0.0-20250506013437-ce4c2cf36ca6
|
||||
golang.org/x/sync v0.14.0
|
||||
gonum.org/v1/gonum v0.15.1
|
||||
modernc.org/sqlite v1.36.1
|
||||
modernc.org/sqlite v1.37.0
|
||||
)
|
||||
|
||||
require (
|
||||
cel.dev/expr v0.22.0 // indirect
|
||||
cloud.google.com/go v0.119.0 // indirect
|
||||
cloud.google.com/go/auth v0.15.0 // indirect
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.7 // indirect
|
||||
cloud.google.com/go/compute/metadata v0.6.0 // indirect
|
||||
cloud.google.com/go/iam v1.4.2 // indirect
|
||||
cloud.google.com/go/monitoring v1.24.1 // indirect
|
||||
github.com/DataDog/appsec-internal-go v1.10.0 // indirect
|
||||
github.com/DataDog/datadog-agent/pkg/obfuscate v0.64.1 // indirect
|
||||
github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.64.1 // indirect
|
||||
github.com/cilium/ebpf v0.16.0 // indirect
|
||||
github.com/containerd/log v0.1.0 // indirect
|
||||
github.com/docker/go-units v0.5.0 // indirect
|
||||
github.com/godbus/dbus/v5 v5.1.0 // indirect
|
||||
github.com/moby/sys/userns v0.1.0 // indirect
|
||||
github.com/opencontainers/runtime-spec v1.2.0 // indirect
|
||||
github.com/sirupsen/logrus v1.9.3 // indirect
|
||||
)
|
||||
|
||||
require (
|
||||
cel.dev/expr v0.24.0 // indirect
|
||||
cloud.google.com/go v0.121.1 // indirect
|
||||
cloud.google.com/go/auth v0.16.1 // indirect
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.8 // indirect
|
||||
cloud.google.com/go/compute/metadata v0.7.0 // indirect
|
||||
cloud.google.com/go/iam v1.5.2 // indirect
|
||||
cloud.google.com/go/monitoring v1.24.2 // indirect
|
||||
github.com/DataDog/appsec-internal-go v1.11.2 // indirect
|
||||
github.com/DataDog/datadog-agent/pkg/obfuscate v0.65.1 // indirect
|
||||
github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.65.1 // indirect
|
||||
github.com/DataDog/go-libddwaf/v3 v3.5.4 // indirect
|
||||
github.com/DataDog/go-sqllexer v0.1.3 // indirect
|
||||
github.com/DataDog/go-sqllexer v0.1.6 // indirect
|
||||
github.com/DataDog/go-tuf v1.1.0-0.5.2 // indirect
|
||||
github.com/DataDog/sketches-go v1.4.7 // indirect
|
||||
github.com/GoogleCloudPlatform/opentelemetry-operations-go/detectors/gcp v1.27.0 // indirect
|
||||
|
@ -134,37 +144,42 @@ require (
|
|||
github.com/GoogleCloudPlatform/opentelemetry-operations-go/internal/resourcemapping v0.51.0 // indirect
|
||||
github.com/Microsoft/go-winio v0.6.2 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.10 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.62 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.67 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.30 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.34 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/ini v1.8.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.34 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.0 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.15 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.15 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.25.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.29.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.33.17 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.25.3 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.30.1 // indirect
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.33.19 // indirect
|
||||
github.com/beorn7/perks v1.0.1 // indirect
|
||||
github.com/cncf/xds/go v0.0.0-20250121191232-2f005788dc42 // indirect
|
||||
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 // indirect
|
||||
github.com/containerd/cgroups v1.1.0
|
||||
github.com/containerd/cgroups/v3 v3.0.5
|
||||
github.com/coreos/go-semver v0.3.1 // indirect
|
||||
github.com/coreos/go-systemd/v22 v22.5.0 // indirect
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.6 // indirect
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.7 // indirect
|
||||
github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc // indirect
|
||||
github.com/eapache/queue/v2 v2.0.0-20230407133247-75960ed334e4 // indirect
|
||||
github.com/ebitengine/purego v0.8.2 // indirect
|
||||
github.com/ebitengine/purego v0.8.3 // indirect
|
||||
github.com/envoyproxy/go-control-plane/envoy v1.32.4 // indirect
|
||||
github.com/envoyproxy/protoc-gen-validate v1.2.1 // indirect
|
||||
github.com/fatih/color v1.18.0 // indirect
|
||||
github.com/felixge/httpsnoop v1.0.4 // indirect
|
||||
github.com/go-jose/go-jose/v4 v4.1.0 // indirect
|
||||
github.com/go-logr/logr v1.4.2 // indirect
|
||||
github.com/go-logr/stdr v1.2.2 // indirect
|
||||
github.com/go-ole/go-ole v1.2.6 // indirect
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 // indirect
|
||||
github.com/gogo/protobuf v1.3.2 // indirect
|
||||
github.com/google/s2a-go v0.1.9 // indirect
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.6 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.14.1 // indirect
|
||||
github.com/googleapis/gax-go/v2 v2.14.2 // indirect
|
||||
github.com/hashicorp/errwrap v1.1.0 // indirect
|
||||
github.com/hashicorp/go-cleanhttp v0.5.2 // indirect
|
||||
github.com/hashicorp/go-hclog v1.6.3 // indirect
|
||||
|
@ -175,8 +190,8 @@ require (
|
|||
github.com/hashicorp/go-secure-stdlib/strutil v0.1.2 // indirect
|
||||
github.com/hashicorp/go-sockaddr v1.0.7 // indirect
|
||||
github.com/hashicorp/golang-lru v1.0.2 // indirect
|
||||
github.com/hashicorp/hcl v1.0.1-vault-7 // indirect
|
||||
github.com/inconshreveable/mousetrap v1.1.0 // indirect
|
||||
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 // indirect
|
||||
github.com/mattn/go-colorable v0.1.14 // indirect
|
||||
github.com/mattn/go-ieproxy v0.0.12 // indirect
|
||||
github.com/mattn/go-isatty v0.0.20 // indirect
|
||||
|
@ -187,23 +202,28 @@ require (
|
|||
github.com/onsi/ginkgo v1.16.5 // indirect
|
||||
github.com/onsi/gomega v1.23.0 // indirect
|
||||
github.com/outcaste-io/ristretto v0.2.3 // indirect
|
||||
github.com/pelletier/go-toml/v2 v2.2.3 // indirect
|
||||
github.com/pelletier/go-toml/v2 v2.2.4 // indirect
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 // indirect
|
||||
github.com/prometheus/client_model v0.6.1 // indirect
|
||||
github.com/prometheus/procfs v0.15.1 // indirect
|
||||
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c // indirect
|
||||
github.com/prometheus/client_model v0.6.2 // indirect
|
||||
github.com/prometheus/procfs v0.16.1 // indirect
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec // indirect
|
||||
github.com/rivo/uniseg v0.4.7 // indirect
|
||||
github.com/rogpeppe/go-internal v1.14.1 // indirect
|
||||
github.com/russross/blackfriday/v2 v2.1.0 // indirect
|
||||
github.com/ryanuber/go-glob v1.0.0 // indirect
|
||||
github.com/sagikazarmark/locafero v0.7.0 // indirect
|
||||
github.com/sagikazarmark/slog-shim v0.1.0 // indirect
|
||||
github.com/sagikazarmark/locafero v0.9.0 // indirect
|
||||
github.com/secure-systems-lab/go-securesystemslib v0.9.0 // indirect
|
||||
github.com/sourcegraph/conc v0.3.0 // indirect
|
||||
github.com/spf13/cast v1.7.1 // indirect
|
||||
github.com/spf13/cast v1.8.0 // indirect
|
||||
github.com/spiffe/go-spiffe/v2 v2.5.0 // indirect
|
||||
github.com/subosito/gotenv v1.6.0 // indirect
|
||||
github.com/tidwall/match v1.1.1 // indirect
|
||||
github.com/tidwall/pretty v1.2.1 // indirect
|
||||
github.com/tklauser/go-sysconf v0.3.12 // indirect
|
||||
github.com/tklauser/numcpus v0.6.1 // indirect
|
||||
github.com/yusufpapurcu/wmi v1.2.4 // indirect
|
||||
github.com/zeebo/errs v1.4.0 // indirect
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 // indirect
|
||||
go.opentelemetry.io/contrib/detectors/gcp v1.35.0 // indirect
|
||||
go.opentelemetry.io/contrib/instrumentation/google.golang.org/grpc/otelgrpc v0.60.0 // indirect
|
||||
|
@ -217,12 +237,12 @@ require (
|
|||
go.uber.org/multierr v1.11.0 // indirect
|
||||
go.uber.org/zap v1.27.0 // indirect
|
||||
golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250313205543-e70fdf4c4cb4 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250313205543-e70fdf4c4cb4 // indirect
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250512202823-5a2f75b736a9 // indirect
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250512202823-5a2f75b736a9 // indirect
|
||||
gopkg.in/ini.v1 v1.67.0 // indirect
|
||||
gopkg.in/yaml.v2 v2.4.0 // indirect
|
||||
gopkg.in/yaml.v3 v3.0.1 // indirect
|
||||
modernc.org/libc v1.61.13 // indirect
|
||||
modernc.org/libc v1.65.6 // indirect
|
||||
modernc.org/mathutil v1.7.1 // indirect
|
||||
modernc.org/memory v1.8.2 // indirect
|
||||
modernc.org/memory v1.10.0 // indirect
|
||||
)
|
||||
|
|
333
go.sum
333
go.sum
|
@ -1,27 +1,27 @@
|
|||
cel.dev/expr v0.22.0 h1:+hFFhLPmquBImfs1BiN2PZmkr5ASse2ZOuaxIs9e4R8=
|
||||
cel.dev/expr v0.22.0/go.mod h1:MrpN08Q+lEBs+bGYdLxxHkZoUSsCp0nSKTs0nTymJgw=
|
||||
cel.dev/expr v0.24.0 h1:56OvJKSH3hDGL0ml5uSxZmz3/3Pq4tJ+fb1unVLAFcY=
|
||||
cel.dev/expr v0.24.0/go.mod h1:hLPLo1W4QUmuYdA72RBX06QTs6MXw941piREPl3Yfiw=
|
||||
cloud.google.com/go v0.26.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
|
||||
cloud.google.com/go v0.34.0/go.mod h1:aQUYkXzVsufM+DwF1aE+0xfcU+56JwCaLick0ClmMTw=
|
||||
cloud.google.com/go v0.119.0 h1:tw7OjErMzJKbbjaEHkrt60KQrK5Wus/boCZ7tm5/RNE=
|
||||
cloud.google.com/go v0.119.0/go.mod h1:fwB8QLzTcNevxqi8dcpR+hoMIs3jBherGS9VUBDAW08=
|
||||
cloud.google.com/go/auth v0.15.0 h1:Ly0u4aA5vG/fsSsxu98qCQBemXtAtJf+95z9HK+cxps=
|
||||
cloud.google.com/go/auth v0.15.0/go.mod h1:WJDGqZ1o9E9wKIL+IwStfyn/+s59zl4Bi+1KQNVXLZ8=
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.7 h1:/Lc7xODdqcEw8IrZ9SvwnlLX6j9FHQM74z6cBk9Rw6M=
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.7/go.mod h1:NTbTTzfvPl1Y3V1nPpOgl2w6d/FjO7NNUQaWSox6ZMc=
|
||||
cloud.google.com/go/compute/metadata v0.6.0 h1:A6hENjEsCDtC1k8byVsgwvVcioamEHvZ4j01OwKxG9I=
|
||||
cloud.google.com/go/compute/metadata v0.6.0/go.mod h1:FjyFAW1MW0C203CEOMDTu3Dk1FlqW3Rga40jzHL4hfg=
|
||||
cloud.google.com/go/iam v1.4.2 h1:4AckGYAYsowXeHzsn/LCKWIwSWLkdb0eGjH8wWkd27Q=
|
||||
cloud.google.com/go/iam v1.4.2/go.mod h1:REGlrt8vSlh4dfCJfSEcNjLGq75wW75c5aU3FLOYq34=
|
||||
cloud.google.com/go v0.121.1 h1:S3kTQSydxmu1JfLRLpKtxRPA7rSrYPRPEUmL/PavVUw=
|
||||
cloud.google.com/go v0.121.1/go.mod h1:nRFlrHq39MNVWu+zESP2PosMWA0ryJw8KUBZ2iZpxbw=
|
||||
cloud.google.com/go/auth v0.16.1 h1:XrXauHMd30LhQYVRHLGvJiYeczweKQXZxsTbV9TiguU=
|
||||
cloud.google.com/go/auth v0.16.1/go.mod h1:1howDHJ5IETh/LwYs3ZxvlkXF48aSqqJUM+5o02dNOI=
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.8 h1:keo8NaayQZ6wimpNSmW5OPc283g65QNIiLpZnkHRbnc=
|
||||
cloud.google.com/go/auth/oauth2adapt v0.2.8/go.mod h1:XQ9y31RkqZCcwJWNSx2Xvric3RrU88hAYYbjDWYDL+c=
|
||||
cloud.google.com/go/compute/metadata v0.7.0 h1:PBWF+iiAerVNe8UCHxdOt6eHLVc3ydFeOCw78U8ytSU=
|
||||
cloud.google.com/go/compute/metadata v0.7.0/go.mod h1:j5MvL9PprKL39t166CoB1uVHfQMs4tFQZZcKwksXUjo=
|
||||
cloud.google.com/go/iam v1.5.2 h1:qgFRAGEmd8z6dJ/qyEchAuL9jpswyODjA2lS+w234g8=
|
||||
cloud.google.com/go/iam v1.5.2/go.mod h1:SE1vg0N81zQqLzQEwxL2WI6yhetBdbNQuTvIKCSkUHE=
|
||||
cloud.google.com/go/logging v1.13.0 h1:7j0HgAp0B94o1YRDqiqm26w4q1rDMH7XNRU34lJXHYc=
|
||||
cloud.google.com/go/logging v1.13.0/go.mod h1:36CoKh6KA/M0PbhPKMq6/qety2DCAErbhXT62TuXALA=
|
||||
cloud.google.com/go/longrunning v0.6.5 h1:sD+t8DO8j4HKW4QfouCklg7ZC1qC4uzVZt8iz3uTW+Q=
|
||||
cloud.google.com/go/longrunning v0.6.5/go.mod h1:Et04XK+0TTLKa5IPYryKf5DkpwImy6TluQ1QTLwlKmY=
|
||||
cloud.google.com/go/monitoring v1.24.1 h1:vKiypZVFD/5a3BbQMvI4gZdl8445ITzXFh257XBgrS0=
|
||||
cloud.google.com/go/monitoring v1.24.1/go.mod h1:Z05d1/vn9NaujqY2voG6pVQXoJGbp+r3laV+LySt9K0=
|
||||
cloud.google.com/go/storage v1.51.0 h1:ZVZ11zCiD7b3k+cH5lQs/qcNaoSz3U9I0jgwVzqDlCw=
|
||||
cloud.google.com/go/storage v1.51.0/go.mod h1:YEJfu/Ki3i5oHC/7jyTgsGZwdQ8P9hqMqvpi5kRKGgc=
|
||||
cloud.google.com/go/trace v1.11.3 h1:c+I4YFjxRQjvAhRmSsmjpASUKq88chOX854ied0K/pE=
|
||||
cloud.google.com/go/trace v1.11.3/go.mod h1:pt7zCYiDSQjC9Y2oqCsh9jF4GStB/hmjrYLsxRR27q8=
|
||||
cloud.google.com/go/longrunning v0.6.7 h1:IGtfDWHhQCgCjwQjV9iiLnUta9LBCo8R9QmAFsS/PrE=
|
||||
cloud.google.com/go/longrunning v0.6.7/go.mod h1:EAFV3IZAKmM56TyiE6VAP3VoTzhZzySwI/YI1s/nRsY=
|
||||
cloud.google.com/go/monitoring v1.24.2 h1:5OTsoJ1dXYIiMiuL+sYscLc9BumrL3CarVLL7dd7lHM=
|
||||
cloud.google.com/go/monitoring v1.24.2/go.mod h1:x7yzPWcgDRnPEv3sI+jJGBkwl5qINf+6qY4eq0I9B4U=
|
||||
cloud.google.com/go/storage v1.54.0 h1:Du3XEyliAiftfyW0bwfdppm2MMLdpVAfiIg4T2nAI+0=
|
||||
cloud.google.com/go/storage v1.54.0/go.mod h1:hIi9Boe8cHxTyaeqh7KMMwKg088VblFK46C2x/BWaZE=
|
||||
cloud.google.com/go/trace v1.11.6 h1:2O2zjPzqPYAHrn3OKl029qlqG6W8ZdYaOWRyr8NgMT4=
|
||||
cloud.google.com/go/trace v1.11.6/go.mod h1:GA855OeDEBiBMzcckLPE2kDunIpC72N+Pq8WFieFjnI=
|
||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6 h1:He8afgbRMd7mFxO99hRNu+6tazq8nFF9lIwo9JFroBk=
|
||||
github.com/AdaLogics/go-fuzz-headers v0.0.0-20240806141605-e8a1dd7889d6/go.mod h1:8o94RPi1/7XTJvwPpRSzSUedZrtlirdB3r9Z20bi2f8=
|
||||
github.com/Azure/azure-pipeline-go v0.2.3 h1:7U9HBg1JFK3jHl5qmo4CTZKFTVgMwdFHMVtCdfBE21U=
|
||||
|
@ -40,19 +40,19 @@ github.com/Azure/go-autorest/logger v0.2.1/go.mod h1:T9E3cAhj2VqvPOtCYAvby9aBXkZ
|
|||
github.com/Azure/go-autorest/tracing v0.6.0 h1:TYi4+3m5t6K48TGI9AUdb+IzbnSxvnvUMfuitfgcfuo=
|
||||
github.com/Azure/go-autorest/tracing v0.6.0/go.mod h1:+vhtPC754Xsa23ID7GlGsrdKBpUA79WCAKPPZVC2DeU=
|
||||
github.com/BurntSushi/toml v0.3.1/go.mod h1:xHWCNGjB5oqiDr8zfno3MHue2Ht5sIBksp03qcyfWMU=
|
||||
github.com/DataDog/appsec-internal-go v1.10.0 h1:RlY1FXYeaDCHs5fbhcs5x/MxZYUwg53LOy+iSj0iHsU=
|
||||
github.com/DataDog/appsec-internal-go v1.10.0/go.mod h1:9eYpAdKZF4Pz49qOmNL+OSVFHjhkZrBdBBjmAwBeN5c=
|
||||
github.com/DataDog/datadog-agent/pkg/obfuscate v0.64.1 h1:pZQkM5znAheg61GNv8qIkVxyUKmVEgN/ZN9sNDULtgg=
|
||||
github.com/DataDog/datadog-agent/pkg/obfuscate v0.64.1/go.mod h1:izbemZjqzBn9upkZj8SyT9igSGPMALaQYgswJ0408vY=
|
||||
github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.64.1 h1:B+kUwdbxFO4Dd07MfoOsenuV5jTEpJxYhFEbL8l95bs=
|
||||
github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.64.1/go.mod h1:1AAhFoEuoXs8jfpj7EiGW6lsqvCYgQc0B0pRpYAPEW4=
|
||||
github.com/DataDog/appsec-internal-go v1.11.2 h1:Q00pPMQzqMIw7jT2ObaORIxBzSly+deS0Ely9OZ/Bj0=
|
||||
github.com/DataDog/appsec-internal-go v1.11.2/go.mod h1:9YppRCpElfGX+emXOKruShFYsdPq7WEPq/Fen4tYYpk=
|
||||
github.com/DataDog/datadog-agent/pkg/obfuscate v0.65.1 h1:WMSComl8tXteUjDnQKZzONEOnaVloOPbZWjjGv+kFNQ=
|
||||
github.com/DataDog/datadog-agent/pkg/obfuscate v0.65.1/go.mod h1:aZhd/54tdkoestFE6bqGn+u2Z3eEnKnWwy4xY/bzSW4=
|
||||
github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.65.1 h1:XGScSyjkISrbd58Sm4rEuXc+s5Cs7YVKiy3X7PucReo=
|
||||
github.com/DataDog/datadog-agent/pkg/remoteconfig/state v0.65.1/go.mod h1:IVspeNtooiQazY8K0dluINf5gdksPfHXUB8zShmDZrU=
|
||||
github.com/DataDog/datadog-go v3.2.0+incompatible/go.mod h1:LButxg5PwREeZtORoXG3tL4fMGNddJ+vMq1mwgfaqoQ=
|
||||
github.com/DataDog/datadog-go/v5 v5.6.0 h1:2oCLxjF/4htd55piM75baflj/KoE6VYS7alEUqFvRDw=
|
||||
github.com/DataDog/datadog-go/v5 v5.6.0/go.mod h1:K9kcYBlxkcPP8tvvjZZKs/m1edNAUFzBbdpTUKfCsuw=
|
||||
github.com/DataDog/go-libddwaf/v3 v3.5.4 h1:cLV5lmGhrUBnHG50EUXdqPQAlJdVCp9n3aQ5bDWJEAg=
|
||||
github.com/DataDog/go-libddwaf/v3 v3.5.4/go.mod h1:HoLUHdj0NybsPBth/UppTcg8/DKA4g+AXuk8cZ6nuoo=
|
||||
github.com/DataDog/go-sqllexer v0.1.3 h1:Kl2T6QVndMEZqQSY8rkoltYP+LVNaA54N+EwAMc9N5w=
|
||||
github.com/DataDog/go-sqllexer v0.1.3/go.mod h1:KwkYhpFEVIq+BfobkTC1vfqm4gTi65skV/DpDBXtexc=
|
||||
github.com/DataDog/go-sqllexer v0.1.6 h1:skEXpWEVCpeZFIiydoIa2f2rf+ymNpjiIMqpW4w3YAk=
|
||||
github.com/DataDog/go-sqllexer v0.1.6/go.mod h1:GGpo1h9/BVSN+6NJKaEcJ9Jn44Hqc63Rakeb+24Mjgo=
|
||||
github.com/DataDog/go-tuf v1.1.0-0.5.2 h1:4CagiIekonLSfL8GMHRHcHudo1fQnxELS9g4tiAupQ4=
|
||||
github.com/DataDog/go-tuf v1.1.0-0.5.2/go.mod h1:zBcq6f654iVqmkk8n2Cx81E1JnNTMOAx1UEO/wZR+P0=
|
||||
github.com/DataDog/gostackparse v0.7.0 h1:i7dLkXHvYzHV308hnkvVGDL3BR4FWl7IsXNPz/IGQh4=
|
||||
|
@ -75,8 +75,8 @@ github.com/Masterminds/vcs v1.13.0/go.mod h1:N09YCmOQr6RLxC6UNHzuVwAdodYbbnycGHS
|
|||
github.com/Microsoft/go-winio v0.5.0/go.mod h1:JPGBdM1cNvN/6ISo+n8V5iA4v8pBzdOpzfwIujj1a84=
|
||||
github.com/Microsoft/go-winio v0.6.2 h1:F2VQgta7ecxGYO8k3ZZz3RS8fVIXVxONVUPlNERoyfY=
|
||||
github.com/Microsoft/go-winio v0.6.2/go.mod h1:yd8OoFMLzJbo9gZq8j5qaps8bJ9aShtEA8Ipt1oGCvU=
|
||||
github.com/Shopify/toxiproxy/v2 v2.11.0 h1:iXm78nBN50T2BTs1Z8w1fdC0Y1kltkJZQEyMcYyCgGQ=
|
||||
github.com/Shopify/toxiproxy/v2 v2.11.0/go.mod h1:EPnGLFvhpcwVKCsbFZwyOq4PxnGg9cFbhMrVT3ROBEo=
|
||||
github.com/Shopify/toxiproxy/v2 v2.12.0 h1:d1x++lYZg/zijXPPcv7PH0MvHMzEI5aX/YuUi/Sw+yg=
|
||||
github.com/Shopify/toxiproxy/v2 v2.12.0/go.mod h1:R9Z38Pw6k2cGZWXHe7tbxjGW9azmY1KbDQJ1kd+h7Tk=
|
||||
github.com/alecthomas/template v0.0.0-20160405071501-a0175ee3bccc/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
|
||||
github.com/alecthomas/template v0.0.0-20190718012654-fb15b899a751/go.mod h1:LOuyumcjzFXgccqObfd/Ljyb9UuFJ6TxHnclSeseNhc=
|
||||
github.com/alecthomas/units v0.0.0-20151022065526-2efee857e7cf/go.mod h1:ybxpYRFXyAe+OPACYpWeL0wqObRcbAqCMya13uyzqw0=
|
||||
|
@ -90,14 +90,14 @@ github.com/aws/aws-sdk-go-v2 v1.36.3 h1:mJoei2CxPutQVxaATCzDUjcZEjVRdpsiiXi2o38y
|
|||
github.com/aws/aws-sdk-go-v2 v1.36.3/go.mod h1:LLXuLpgzEbD766Z5ECcRmi8AzSwfZItDtmABVkRLGzg=
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.10 h1:zAybnyUQXIZ5mok5Jqwlf58/TFE7uvd3IAsa1aF9cXs=
|
||||
github.com/aws/aws-sdk-go-v2/aws/protocol/eventstream v1.6.10/go.mod h1:qqvMj6gHLR/EXWZw4ZbqlPbQUyenf4h82UQUlKc+l14=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.9 h1:Kg+fAYNaJeGXp1vmjtidss8O2uXIsXwaRqsQJKXVr+0=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.9/go.mod h1:oU3jj2O53kgOU4TXq/yipt6ryiooYjlkqqVaZk7gY/U=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.62 h1:fvtQY3zFzYJ9CfixuAQ96IxDrBajbBWGqjNTCa79ocU=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.62/go.mod h1:ElETBxIQqcxej++Cs8GyPBbgMys5DgQPTwo7cUPDKt8=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.14 h1:f+eEi/2cKCg9pqKBoAIwRGzVb70MRKqWX4dg1BDcSJM=
|
||||
github.com/aws/aws-sdk-go-v2/config v1.29.14/go.mod h1:wVPHWcIFv3WO89w0rE10gzf17ZYy+UVS1Geq8Iei34g=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.67 h1:9KxtdcIA/5xPNQyZRgUSpYOE6j9Bc4+D7nZua0KGYOM=
|
||||
github.com/aws/aws-sdk-go-v2/credentials v1.17.67/go.mod h1:p3C44m+cfnbv763s52gCqrjaqyPikj9Sg47kUVaNZQQ=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.30 h1:x793wxmUWVDhshP8WW2mlnXuFrO4cOd3HLBroh1paFw=
|
||||
github.com/aws/aws-sdk-go-v2/feature/ec2/imds v1.16.30/go.mod h1:Jpne2tDnYiFascUEs2AWHJL9Yp7A5ZVy3TNyxaAjD6M=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.66 h1:MTLivtC3s89de7Fe3P8rzML/8XPNRfuyJhlRTsCEt0k=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.66/go.mod h1:NAuQ2s6gaFEsuTIb2+P5t6amB1w5MhvJFxppoezGWH0=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.75 h1:S61/E3N01oral6B3y9hZ2E1iFDqCZPPOBoBQretCnBI=
|
||||
github.com/aws/aws-sdk-go-v2/feature/s3/manager v1.17.75/go.mod h1:bDMQbkI1vJbNjnvJYpPTSNYBkI/VIv18ngWb/K84tkk=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34 h1:ZK5jHhnrioRkUNOc+hOgQKlUL5JeC3S6JgLxtQ+Rm0Q=
|
||||
github.com/aws/aws-sdk-go-v2/internal/configsources v1.3.34/go.mod h1:p4VfIceZokChbA9FzMbRGz5OV+lekcVtHlPKEO0gSZY=
|
||||
github.com/aws/aws-sdk-go-v2/internal/endpoints/v2 v2.6.34 h1:SZwFm17ZUNNg5Np0ioo/gq8Mn6u9w19Mri8DnJ15Jf0=
|
||||
|
@ -108,20 +108,20 @@ github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.34 h1:ZNTqv4nIdE/DiBfUUfXcLZ/Spcu
|
|||
github.com/aws/aws-sdk-go-v2/internal/v4a v1.3.34/go.mod h1:zf7Vcd1ViW7cPqYWEHLHJkS50X0JS2IKz9Cgaj6ugrs=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.3 h1:eAh2A4b5IzM/lum78bZ590jy36+d/aFLgKF/4Vd1xPE=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/accept-encoding v1.12.3/go.mod h1:0yKJC/kb8sAnmlYa6Zs3QVYqaC8ug2AbnNChv5Ox3uA=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.0 h1:lguz0bmOoGzozP9XfRJR1QIayEYo+2vP/No3OfLF0pU=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.0/go.mod h1:iu6FSzgt+M2/x3Dk8zhycdIcHjEFb36IS8HVUVFoMg0=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.1 h1:4nm2G6A4pV9rdlWzGMPv4BNtQp22v1hg3yrtkYpeLl8=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/checksum v1.7.1/go.mod h1:iu6FSzgt+M2/x3Dk8zhycdIcHjEFb36IS8HVUVFoMg0=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.15 h1:dM9/92u2F1JbDaGooxTq18wmmFzbJRfXfVfy96/1CXM=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/presigned-url v1.12.15/go.mod h1:SwFBy2vjtA0vZbjjaFtfN045boopadnoVPhu4Fv66vY=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.15 h1:moLQUoVq91LiqT1nbvzDukyqAlCv89ZmwaHw/ZFlFZg=
|
||||
github.com/aws/aws-sdk-go-v2/service/internal/s3shared v1.18.15/go.mod h1:ZH34PJUc8ApjBIfgQCFvkWcUDBtl/WTD+uiYHjd8igA=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.78.2 h1:jIiopHEV22b4yQP2q36Y0OmwLbsxNWdWwfZRR5QRRO4=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.78.2/go.mod h1:U5SNqwhXB3Xe6F47kXvWihPl/ilGaEDe8HD/50Z9wxc=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.25.1 h1:8JdC7Gr9NROg1Rusk25IcZeTO59zLxsKgE0gkh5O6h0=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.25.1/go.mod h1:qs4a9T5EMLl/Cajiw2TcbNt2UNo/Hqlyp+GiuG4CFDI=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.29.1 h1:KwuLovgQPcdjNMfFt9OhUd9a2OwcOKhxfvF4glTzLuA=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.29.1/go.mod h1:MlYRNmYu/fGPoxBQVvBYr9nyr948aY/WLUvwBMBJubs=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.33.17 h1:PZV5W8yk4OtH1JAuhV2PXwwO9v5G5Aoj+eMCn4T+1Kc=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.33.17/go.mod h1:cQnB8CUnxbMU82JvlqjKR2HBOm3fe9pWorWBza6MBJ4=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.79.3 h1:BRXS0U76Z8wfF+bnkilA2QwpIch6URlm++yPUt9QPmQ=
|
||||
github.com/aws/aws-sdk-go-v2/service/s3 v1.79.3/go.mod h1:bNXKFFyaiVvWuR6O16h/I1724+aXe/tAkA9/QS01t5k=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.25.3 h1:1Gw+9ajCV1jogloEv1RRnvfRFia2cL6c9cuKV2Ps+G8=
|
||||
github.com/aws/aws-sdk-go-v2/service/sso v1.25.3/go.mod h1:qs4a9T5EMLl/Cajiw2TcbNt2UNo/Hqlyp+GiuG4CFDI=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.30.1 h1:hXmVKytPfTy5axZ+fYbR5d0cFmC3JvwLm5kM83luako=
|
||||
github.com/aws/aws-sdk-go-v2/service/ssooidc v1.30.1/go.mod h1:MlYRNmYu/fGPoxBQVvBYr9nyr948aY/WLUvwBMBJubs=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.33.19 h1:1XuUZ8mYJw9B6lzAkXhqHlJd/XvaX32evhproijJEZY=
|
||||
github.com/aws/aws-sdk-go-v2/service/sts v1.33.19/go.mod h1:cQnB8CUnxbMU82JvlqjKR2HBOm3fe9pWorWBza6MBJ4=
|
||||
github.com/aws/smithy-go v1.22.3 h1:Z//5NuZCSW6R4PhQ93hShNbyBbn8BWCmCVCt+Q8Io5k=
|
||||
github.com/aws/smithy-go v1.22.3/go.mod h1:t1ufH5HMublsJYulve2RKmHDC15xu1f26kHCp/HgceI=
|
||||
github.com/benbjohnson/clock v1.1.0/go.mod h1:J11/hYXuz8f4ySSvYwY0FKfm+ezbsZBKZxNJlLklBHA=
|
||||
|
@ -137,21 +137,30 @@ github.com/census-instrumentation/opencensus-proto v0.2.1/go.mod h1:f6KPmirojxKA
|
|||
github.com/cespare/xxhash/v2 v2.1.1/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||
github.com/cespare/xxhash/v2 v2.3.0 h1:UL815xU9SqsFlibzuggzjXhog7bL6oX9BbNZnL2UFvs=
|
||||
github.com/cespare/xxhash/v2 v2.3.0/go.mod h1:VGX0DQ3Q6kWi7AoAeZDth3/j3BFtOZR5XLFGgcrjCOs=
|
||||
github.com/cilium/ebpf v0.16.0 h1:+BiEnHL6Z7lXnlGUsXQPPAE7+kenAd4ES8MQ5min0Ok=
|
||||
github.com/cilium/ebpf v0.16.0/go.mod h1:L7u2Blt2jMM/vLAVgjxluxtBKlz3/GWjB0dMOEngfwE=
|
||||
github.com/circonus-labs/circonus-gometrics v2.3.1+incompatible/go.mod h1:nmEj6Dob7S7YxXgwXpfOuvO54S+tGdZdw9fuRZt25Ag=
|
||||
github.com/circonus-labs/circonusllhist v0.1.3/go.mod h1:kMXHVDlOchFAehlya5ePtbp5jckzBHf4XRpQvBOLI+I=
|
||||
github.com/client9/misspell v0.3.4/go.mod h1:qj6jICC3Q7zFZvVWo7KLAzC3yx5G7kyvSDkc90ppPyw=
|
||||
github.com/cncf/udpa/go v0.0.0-20191209042840-269d4d468f6f/go.mod h1:M8M6+tZqaGXZJjfX53e64911xZQV5JYwmTeXPW+k8Sc=
|
||||
github.com/cncf/xds/go v0.0.0-20250121191232-2f005788dc42 h1:Om6kYQYDUk5wWbT0t0q6pvyM49i9XZAv9dDrkDA7gjk=
|
||||
github.com/cncf/xds/go v0.0.0-20250121191232-2f005788dc42/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8=
|
||||
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443 h1:aQ3y1lwWyqYPiWZThqv1aFbZMiM9vblcSArJRf2Irls=
|
||||
github.com/cncf/xds/go v0.0.0-20250501225837-2ac532fd4443/go.mod h1:W+zGtBO5Y1IgJhy4+A9GOqVhqLpfZi+vwmdNXUehLA8=
|
||||
github.com/codegangsta/cli v1.20.0/go.mod h1:/qJNoX69yVSKu5o4jLyXAENLRyk1uhi7zkbQ3slBdOA=
|
||||
github.com/containerd/cgroups v1.1.0 h1:v8rEWFl6EoqHB+swVNjVoCJE8o3jX7e8nqBGPLaDFBM=
|
||||
github.com/containerd/cgroups v1.1.0/go.mod h1:6ppBcbh/NOOUU+dMKrykgaBnK9lCIBxHqJDGwsa1mIw=
|
||||
github.com/containerd/cgroups/v3 v3.0.5 h1:44na7Ud+VwyE7LIoJ8JTNQOa549a8543BmzaJHo6Bzo=
|
||||
github.com/containerd/cgroups/v3 v3.0.5/go.mod h1:SA5DLYnXO8pTGYiAHXz94qvLQTKfVM5GEVisn4jpins=
|
||||
github.com/containerd/log v0.1.0 h1:TCJt7ioM2cr/tfR8GPbGf9/VRAX8D2B4PjzCpfX540I=
|
||||
github.com/containerd/log v0.1.0/go.mod h1:VRRf09a7mHDIRezVKTRCrOq78v577GXq3bSa3EhrzVo=
|
||||
github.com/coreos/go-semver v0.3.1 h1:yi21YpKnrx1gt5R+la8n5WgS0kCrsPp33dmEyHReZr4=
|
||||
github.com/coreos/go-semver v0.3.1/go.mod h1:irMmmIw/7yzSRPWryHsK7EYSg09caPQL03VsM8rvUec=
|
||||
github.com/coreos/go-systemd/v22 v22.5.0 h1:RrqgGjYQKalulkV8NGVIfkXQf6YYmOyiJKk8iXXhfZs=
|
||||
github.com/coreos/go-systemd/v22 v22.5.0/go.mod h1:Y58oyj3AT4RCenI/lSvhwexgC+NSVTIJ3seZv2GcEnc=
|
||||
github.com/corpix/uarand v0.1.1 h1:RMr1TWc9F4n5jiPDzFHtmaUXLKLNUFK0SgCLo4BhX/U=
|
||||
github.com/corpix/uarand v0.1.1/go.mod h1:SFKZvkcRoLqVRFZ4u25xPmp6m9ktANfbpXZ7SJ0/FNU=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.6 h1:XJtiaUW6dEEqVuZiMTn1ldk455QWwEIsMIJlo5vtkx0=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.6/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.7 h1:zbFlGlXEAKlwXpmvle3d8Oe3YnkKIK4xSRTd3sHPnBo=
|
||||
github.com/cpuguy83/go-md2man/v2 v2.0.7/go.mod h1:oOW0eioCTA6cOiMLiUPZOpcVxMig6NIQQ7OS05n1F4g=
|
||||
github.com/creack/pty v1.1.9/go.mod h1:oKZEueFk5CKHvIhNR5MUki03XCEU+Q6VDXinZuGJ33E=
|
||||
github.com/dave/jennifer v1.7.1 h1:B4jJJDHelWcDhlRQxWeo0Npa/pYKBLrirAQoTN45txo=
|
||||
github.com/dave/jennifer v1.7.1/go.mod h1:nXbxhEmQfOZhWml3D1cDK5M1FLnMSozpbFN/m3RmGZc=
|
||||
|
@ -162,13 +171,15 @@ github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc/go.mod h1:J7Y8Yc
|
|||
github.com/dgryski/go-farm v0.0.0-20190423205320-6a90982ecee2/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=
|
||||
github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13 h1:fAjc9m62+UWV/WAFKLNi6ZS0675eEUC9y3AlwSbQu1Y=
|
||||
github.com/dgryski/go-farm v0.0.0-20200201041132-a6ae2369ad13/go.mod h1:SqUrOPUnsFjfmXRMNPybcSiG0BgUW2AuFH8PAnS2iTw=
|
||||
github.com/docker/go-units v0.5.0 h1:69rxXcBk27SvSaaxTtLh/8llcHD8vYHT7WSdRZ/jvr4=
|
||||
github.com/docker/go-units v0.5.0/go.mod h1:fgPhTUdO+D/Jk86RDLlptpiXQzgHJF7gydDDbaIK4Dk=
|
||||
github.com/dustin/go-humanize v1.0.0/go.mod h1:HtrtbFcZ19U5GC7JDqmcUSB87Iq5E25KnS6fMYU6eOk=
|
||||
github.com/dustin/go-humanize v1.0.1 h1:GzkhY7T5VNhEkwH0PVJgjz+fX1rhBrR7pRT3mDkpeCY=
|
||||
github.com/dustin/go-humanize v1.0.1/go.mod h1:Mu1zIs6XwVuF/gI1OepvI0qD18qycQx+mFykh5fBlto=
|
||||
github.com/eapache/queue/v2 v2.0.0-20230407133247-75960ed334e4 h1:8EXxF+tCLqaVk8AOC29zl2mnhQjwyLxxOTuhUazWRsg=
|
||||
github.com/eapache/queue/v2 v2.0.0-20230407133247-75960ed334e4/go.mod h1:I5sHm0Y0T1u5YjlyqC5GVArM7aNZRUYtTjmJ8mPJFds=
|
||||
github.com/ebitengine/purego v0.8.2 h1:jPPGWs2sZ1UgOSgD2bClL0MJIqu58nOmIcBuXr62z1I=
|
||||
github.com/ebitengine/purego v0.8.2/go.mod h1:iIjxzd6CiRiOG0UyXP+V1+jWqUXVjPKLAI0mRfJZTmQ=
|
||||
github.com/ebitengine/purego v0.8.3 h1:K+0AjQp63JEZTEMZiwsI9g0+hAMNohwUOtY0RPGexmc=
|
||||
github.com/ebitengine/purego v0.8.3/go.mod h1:iIjxzd6CiRiOG0UyXP+V1+jWqUXVjPKLAI0mRfJZTmQ=
|
||||
github.com/envoyproxy/go-control-plane v0.9.0/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
|
||||
github.com/envoyproxy/go-control-plane v0.9.1-0.20191026205805-5f8ba28d4473/go.mod h1:YTl/9mNaCwkRvm6d1a2C3ymFceY/DCBVvsKhRF0iEA4=
|
||||
github.com/envoyproxy/go-control-plane v0.9.4/go.mod h1:6rpuAdCZL397s3pYoYcLgu1mIlRU8Am5FuJP05cCM98=
|
||||
|
@ -194,10 +205,12 @@ github.com/frankban/quicktest v1.14.6 h1:7Xjx+VpznH+oBnejlPUj8oUpdxnVs4f8XU8WnHk
|
|||
github.com/frankban/quicktest v1.14.6/go.mod h1:4ptaffx2x8+WTWXmUCuVU6aPUX1/Mz7zb5vbUoiM6w0=
|
||||
github.com/fsnotify/fsnotify v1.4.7/go.mod h1:jwhsz4b93w/PPRr/qN1Yymfu8t87LnFCMoQvtojpjFo=
|
||||
github.com/fsnotify/fsnotify v1.4.9/go.mod h1:znqG4EE+3YCdAaPaxE2ZRY/06pZUdp0tY4IgpuI1SZQ=
|
||||
github.com/fsnotify/fsnotify v1.8.0 h1:dAwr6QBTBZIkG8roQaJjGof0pp0EeF+tNV7YBP3F/8M=
|
||||
github.com/fsnotify/fsnotify v1.8.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
||||
github.com/fsnotify/fsnotify v1.9.0 h1:2Ml+OJNzbYCTzsxtv8vKSFD9PbJjmhYF14k/jKC7S9k=
|
||||
github.com/fsnotify/fsnotify v1.9.0/go.mod h1:8jBTzvmWwFyi3Pb8djgCCO5IBqzKJ/Jwo8TRcHyHii0=
|
||||
github.com/gammazero/deque v1.0.0 h1:LTmimT8H7bXkkCy6gZX7zNLtkbz4NdS2z8LZuor3j34=
|
||||
github.com/gammazero/deque v1.0.0/go.mod h1:iflpYvtGfM3U8S8j+sZEKIak3SAKYpA5/SQewgfXDKo=
|
||||
github.com/go-jose/go-jose/v4 v4.1.0 h1:cYSYxd3pw5zd2FSXk2vGdn9igQU2PS8MuxrCOCl0FdY=
|
||||
github.com/go-jose/go-jose/v4 v4.1.0/go.mod h1:GG/vqmYm3Von2nYiB2vGTXzdoNKE5tix5tuc6iAd+sw=
|
||||
github.com/go-kit/kit v0.8.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
|
||||
github.com/go-kit/kit v0.9.0/go.mod h1:xBxKIO96dXMWWy0MnWVtmwkA9/13aqxPnvrjFYMA2as=
|
||||
github.com/go-kit/log v0.1.0/go.mod h1:zbhenjAZHb184qTLMA9ZjW7ThYL0H2mk7Q6pNt4vbaY=
|
||||
|
@ -209,17 +222,25 @@ github.com/go-logr/logr v1.4.2 h1:6pFjapn8bFcIbiKo3XT4j/BhANplGihG6tvd+8rYgrY=
|
|||
github.com/go-logr/logr v1.4.2/go.mod h1:9T104GzyrTigFIr8wt5mBrctHMim0Nb2HLGrmQ40KvY=
|
||||
github.com/go-logr/stdr v1.2.2 h1:hSWxHoqTgW2S2qGc0LTAI563KZ5YKYRhT3MFKZMbjag=
|
||||
github.com/go-logr/stdr v1.2.2/go.mod h1:mMo/vtBO5dYbehREoey6XUKy/eSumjCCveDpRre4VKE=
|
||||
github.com/go-ole/go-ole v1.2.6 h1:/Fpf6oFPoeFik9ty7siob0G6Ke8QvQEuVcuChpwXzpY=
|
||||
github.com/go-ole/go-ole v1.2.6/go.mod h1:pprOEPIfldk/42T2oK7lQ4v4JSDwmV0As9GaiUsvbm0=
|
||||
github.com/go-quicktest/qt v1.101.0 h1:O1K29Txy5P2OK0dGo59b7b0LR6wKfIhttaAhHUyn7eI=
|
||||
github.com/go-quicktest/qt v1.101.0/go.mod h1:14Bz/f7NwaXPtdYEgzsx46kqSxVwTbzVZsDC26tQJow=
|
||||
github.com/go-sql-driver/mysql v1.7.1 h1:lUIinVbN1DY0xBg0eMOzmmtGoHwWBbvnWubQUrtU8EI=
|
||||
github.com/go-sql-driver/mysql v1.7.1/go.mod h1:OXbVy3sEdcQ2Doequ6Z5BW6fXNQTmx+9S1MCJN5yJMI=
|
||||
github.com/go-stack/stack v1.8.0/go.mod h1:v0f6uXyyMGvRgIKkXu+yp6POWl0qKG85gN/melR3HDY=
|
||||
github.com/go-task/slim-sprig v0.0.0-20210107165309-348f09dbbbc0/go.mod h1:fyg7847qk6SyHyPtNmDHnmrv/HOrqktSC+C9fM+CJOE=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0 h1:27XbWsHIqhbdR5TIC911OfYvgSaW93HM+dX7970Q7jk=
|
||||
github.com/go-viper/mapstructure/v2 v2.3.0/go.mod h1:oJDH3BJKyqBA2TXFhDsKDGDTlndYOZ6rGS0BRZIxGhM=
|
||||
github.com/godbus/dbus/v5 v5.0.4/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
|
||||
github.com/godbus/dbus/v5 v5.1.0 h1:4KLkAxT3aOY8Li4FRJe/KvhoNFFxo0m6fNuFUO8QJUk=
|
||||
github.com/godbus/dbus/v5 v5.1.0/go.mod h1:xhWf0FNVPg57R7Z0UbKHbJfkEywrmjJnf7w5xrFpKfA=
|
||||
github.com/gogo/protobuf v1.1.1/go.mod h1:r8qH/GZQm5c6nD/R0oafs1akxWv10x8SbQlK7atdtwQ=
|
||||
github.com/gogo/protobuf v1.3.2 h1:Ov1cvc58UF3b5XjBnZv7+opcTcQFZebYjWzi34vdm4Q=
|
||||
github.com/gogo/protobuf v1.3.2/go.mod h1:P1XiOD3dCwIKUDQYPy72D8LYyHL2YPYrpS2s69NZV8Q=
|
||||
github.com/golang/glog v0.0.0-20160126235308-23def4e6c14b/go.mod h1:SBH7ygxi8pfUlaOkMMuAQtPIUF8ecWP5IEl/CR7VP2Q=
|
||||
github.com/golang/glog v1.2.4 h1:CNNw5U8lSiiBk7druxtSHHTsRWcxKoac6kZKm2peBBc=
|
||||
github.com/golang/glog v1.2.4/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w=
|
||||
github.com/golang/glog v1.2.5 h1:DrW6hGnjIhtvhOIiAKT6Psh/Kd/ldepEa81DKeiRJ5I=
|
||||
github.com/golang/glog v1.2.5/go.mod h1:6AhwSGph0fcJtXVM/PEHPqZlFeoLxhs7/t5UDAwmO+w=
|
||||
github.com/golang/mock v1.1.1/go.mod h1:oTYuIxOrZwtPieC+H1uAHpcLFnEyAGVDL/k47Jfbm0A=
|
||||
github.com/golang/mock v1.6.0/go.mod h1:p6yTPP+5HYm5mzsMV8JkE6ZKdX+/wYM6Hr+LicevLPs=
|
||||
github.com/golang/protobuf v1.2.0/go.mod h1:6lQm79b+lXiMfvg/cZm0SGofjICqVBUtrP5yJMmIC1U=
|
||||
|
@ -245,6 +266,7 @@ github.com/google/go-cmp v0.3.1/go.mod h1:8QqcDgzrUqlUb/G2PQTWiueGozuR1884gddMyw
|
|||
github.com/google/go-cmp v0.4.0/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.4/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.5/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.6/go.mod h1:v8dTdLbMG2kIc/vJvl+f65V22dbkXbowE6jgT/gNBxE=
|
||||
github.com/google/go-cmp v0.5.9/go.mod h1:17dUlkBOakJ0+DkrSSNjCkIjxS6bF9zb3elmeNGIjoY=
|
||||
github.com/google/go-cmp v0.7.0 h1:wk8382ETsv4JYUZwIsn6YpYiWiBsYLSJiTsyBybVuN8=
|
||||
github.com/google/go-cmp v0.7.0/go.mod h1:pXiqmnSA92OHEEa9HXL2W4E7lf9JzCmGVUdgjX3N/iU=
|
||||
|
@ -253,8 +275,8 @@ github.com/google/gofuzz v1.2.0 h1:xRy4A+RhZaiKjJ1bPfwQ8sedCA+YS2YcCHW6ec7JMi0=
|
|||
github.com/google/gofuzz v1.2.0/go.mod h1:dBl0BpW6vV/+mYPU4Po3pmUjxk6FQPldtuIdl/M65Eg=
|
||||
github.com/google/martian/v3 v3.3.3 h1:DIhPTQrbPkgs2yJYdXU/eNACCG5DVQjySNRNlflZ9Fc=
|
||||
github.com/google/martian/v3 v3.3.3/go.mod h1:iEPrYcgCF7jA9OtScMFQyAlZZ4YXTKEtJ1E6RWzmBA0=
|
||||
github.com/google/pprof v0.0.0-20240409012703-83162a5b38cd h1:gbpYu9NMq8jhDVbvlGkMFWCjLFlqqEZjEmObmhUy6Vo=
|
||||
github.com/google/pprof v0.0.0-20240409012703-83162a5b38cd/go.mod h1:kf6iHlnVGwgKolg33glAes7Yg/8iWP8ukqeldJSO7jw=
|
||||
github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e h1:ijClszYn+mADRFY17kjQEVQ1XRhq2/JR1M3sGqeJoxs=
|
||||
github.com/google/pprof v0.0.0-20250317173921-a4b03ec1a45e/go.mod h1:boTsfXsheKC2y+lKOCMpSfarhxDeIzfZG1jqGcPl3cA=
|
||||
github.com/google/s2a-go v0.1.9 h1:LGD7gtMgezd8a/Xak7mEWL0PjoTQFvpRudN895yqKW0=
|
||||
github.com/google/s2a-go v0.1.9/go.mod h1:YA0Ei2ZQL3acow2O62kdp9UlnvMmU7kA6Eutn0dXayM=
|
||||
github.com/google/safehtml v0.1.0 h1:EwLKo8qawTKfsi0orxcQAZzu07cICaBeFMegAU9eaT8=
|
||||
|
@ -266,8 +288,8 @@ github.com/google/uuid v1.6.0 h1:NIvaJDMOsjHA8n1jAhLSgzrAzy1Hgr+hNrb57e+94F0=
|
|||
github.com/google/uuid v1.6.0/go.mod h1:TIyPZe4MgqvfeYDBFedMoGGpEw/LqOeaOT+nhxU+yHo=
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.6 h1:GW/XbdyBFQ8Qe+YAmFU9uHLo7OnF5tL52HFAgMmyrf4=
|
||||
github.com/googleapis/enterprise-certificate-proxy v0.3.6/go.mod h1:MkHOF77EYAE7qfSuSS9PU6g4Nt4e11cnsDUowfwewLA=
|
||||
github.com/googleapis/gax-go/v2 v2.14.1 h1:hb0FFeiPaQskmvakKu5EbCbpntQn48jyHuvrkurSS/Q=
|
||||
github.com/googleapis/gax-go/v2 v2.14.1/go.mod h1:Hb/NubMaVM88SrNkvl8X/o8XWwDJEPqouaLeN2IUxoA=
|
||||
github.com/googleapis/gax-go/v2 v2.14.2 h1:eBLnkZ9635krYIPD+ag1USrOAI0Nr0QYF3+/3GqO0k0=
|
||||
github.com/googleapis/gax-go/v2 v2.14.2/go.mod h1:ON64QhlJkhVtSqp4v1uaK92VyZ2gmvDQsweuyLV+8+w=
|
||||
github.com/gopherjs/gopherjs v0.0.0-20181103185306-d547d1d9531e/go.mod h1:wJfORRmW1u3UXTncJ5qlYoELFm8eSnnEO6hX4iZ3EWY=
|
||||
github.com/gorilla/handlers v1.5.2 h1:cLTUSsNkgcwhgRqvCNmdbRWG0A3N4F+M2nWKdScwyEE=
|
||||
github.com/gorilla/handlers v1.5.2/go.mod h1:dX+xVpaxdSw+q0Qek8SSsl3dfMk3jNddUkMzo0GtH0w=
|
||||
|
@ -277,8 +299,8 @@ github.com/grpc-ecosystem/go-grpc-middleware v1.4.0 h1:UH//fgunKIs4JdUbpDl1VZCDa
|
|||
github.com/grpc-ecosystem/go-grpc-middleware v1.4.0/go.mod h1:g5qyo/la0ALbONm6Vbp88Yd8NsDy6rZz+RcrMPxvld8=
|
||||
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0 h1:Ovs26xHkKqVztRpIrF/92BcuyuQ/YW4NSIpoGtfXNho=
|
||||
github.com/grpc-ecosystem/go-grpc-prometheus v1.2.0/go.mod h1:8NvIoxWQoOIhqOTXgfV/d3M/q6VIi02HzZEHgUlZvzk=
|
||||
github.com/hashicorp/consul/api v1.31.2 h1:NicObVJHcCmyOIl7Z9iHPvvFrocgTYo9cITSGg0/7pw=
|
||||
github.com/hashicorp/consul/api v1.31.2/go.mod h1:Z8YgY0eVPukT/17ejW+l+C7zJmKwgPHtjU1q16v/Y40=
|
||||
github.com/hashicorp/consul/api v1.32.1 h1:0+osr/3t/aZNAdJX558crU3PEjVrG4x6715aZHRgceE=
|
||||
github.com/hashicorp/consul/api v1.32.1/go.mod h1:mXUWLnxftwTmDv4W3lzxYCPD199iNLLUyLfLGFJbtl4=
|
||||
github.com/hashicorp/consul/sdk v0.16.1 h1:V8TxTnImoPD5cj0U9Spl0TUxcytjcbbJeADFF07KdHg=
|
||||
github.com/hashicorp/consul/sdk v0.16.1/go.mod h1:fSXvwxB2hmh1FMZCNl6PwX0Q/1wdWtHJcZ7Ea5tns0s=
|
||||
github.com/hashicorp/errwrap v1.0.0/go.mod h1:YH+1FKiLXxHSkmPseP+kNlulaMuP3n2brvKWEqk/Jc4=
|
||||
|
@ -316,8 +338,6 @@ github.com/hashicorp/go-version v1.7.0/go.mod h1:fltr4n8CU8Ke44wwGCBoEymUuxUHl09
|
|||
github.com/hashicorp/golang-lru v0.5.0/go.mod h1:/m3WP610KZHVQ1SGc6re/UDhFvYD7pJ4Ao+sR/qLZy8=
|
||||
github.com/hashicorp/golang-lru v1.0.2 h1:dV3g9Z/unq5DpblPpw+Oqcv4dU/1omnb4Ok8iPY6p1c=
|
||||
github.com/hashicorp/golang-lru v1.0.2/go.mod h1:iADmTwqILo4mZ8BN3D2Q6+9jd8WM5uGBxy+E8yxSoD4=
|
||||
github.com/hashicorp/hcl v1.0.1-vault-7 h1:ag5OxFVy3QYTFTJODRzTKVZ6xvdfLLCA1cy/Y6xGI0I=
|
||||
github.com/hashicorp/hcl v1.0.1-vault-7/go.mod h1:XYhtn6ijBSAj6n4YqAaf7RBPS4I06AItNorpy+MoQNM=
|
||||
github.com/hashicorp/memberlist v0.5.2 h1:rJoNPWZ0juJBgqn48gjy59K5H4rNgvUoM1kUD7bXiuI=
|
||||
github.com/hashicorp/memberlist v0.5.2/go.mod h1:Ri9p/tRShbjYnpNf4FFPXG7wxEGY4Nrcn6E7jrVa//4=
|
||||
github.com/hashicorp/serf v0.10.2 h1:m5IORhuNSjaxeljg5DeQVDlQyVkhRIjJDimbkCa8aAc=
|
||||
|
@ -327,7 +347,11 @@ github.com/icrowley/fake v0.0.0-20180203215853-4178557ae428 h1:Mo9W14pwbO9VfRe+y
|
|||
github.com/icrowley/fake v0.0.0-20180203215853-4178557ae428/go.mod h1:uhpZMVGznybq1itEKXj6RYw9I71qK4kH+OGMjRC4KEo=
|
||||
github.com/inconshreveable/mousetrap v1.1.0 h1:wN+x4NVGpMsO7ErUn/mUI3vEoE6Jt13X2s0bqwp9tc8=
|
||||
github.com/inconshreveable/mousetrap v1.1.0/go.mod h1:vpF70FUmC8bwa3OWnCshd2FqLfsEA9PFc4w1p2J65bw=
|
||||
github.com/josharian/native v1.1.0 h1:uuaP0hAbW7Y4l0ZRQ6C9zfb7Mg1mbFKry/xzDAfmtLA=
|
||||
github.com/josharian/native v1.1.0/go.mod h1:7X/raswPFr05uY3HiLlYeyQntB6OO7E/d2Cu7qoaN2w=
|
||||
github.com/jpillora/backoff v1.0.0/go.mod h1:J/6gKK9jxlEcS3zixgDgUAsiuZ7yrSoa/FX5e0EB2j4=
|
||||
github.com/jsimonetti/rtnetlink/v2 v2.0.1 h1:xda7qaHDSVOsADNouv7ukSuicKZO7GgVUCXxpaIEIlM=
|
||||
github.com/jsimonetti/rtnetlink/v2 v2.0.1/go.mod h1:7MoNYNbb3UaDHtF8udiJo/RH6VsTKP1pqKLUTVCvToE=
|
||||
github.com/json-iterator/go v1.1.6/go.mod h1:+SdeFBvtyEkXs7REEP0seUULqWtbJapLOCVDaaPEHmU=
|
||||
github.com/json-iterator/go v1.1.9/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
|
||||
github.com/json-iterator/go v1.1.10/go.mod h1:KdQUCv79m/52Kvf8AW2vK1V8akMuk1QjK/uOdHXbAo4=
|
||||
|
@ -356,8 +380,8 @@ github.com/krishicks/yaml-patch v0.0.10 h1:H4FcHpnNwVmw8u0MjPRjWyIXtco6zM2F78t+5
|
|||
github.com/krishicks/yaml-patch v0.0.10/go.mod h1:Sm5TchwZS6sm7RJoyg87tzxm2ZcKzdRE4Q7TjNhPrME=
|
||||
github.com/kylelemons/godebug v1.1.0 h1:RPNrshWIDI6G2gRW9EHilWtl7Z6Sb1BR0xunSBf0SNc=
|
||||
github.com/kylelemons/godebug v1.1.0/go.mod h1:9/0rRGxNHcop5bhtWyNeEfOS8JIWk580+fNqagV/RAw=
|
||||
github.com/magiconair/properties v1.8.9 h1:nWcCbLq1N2v/cpNsy5WvQ37Fb+YElfq20WJ/a8RkpQM=
|
||||
github.com/magiconair/properties v1.8.9/go.mod h1:Dhd985XPs7jluiymwWYZ0G4Z61jb3vdS329zhj2hYo0=
|
||||
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0 h1:6E+4a0GO5zZEnZ81pIr0yLvtUWk2if982qA3F3QD6H4=
|
||||
github.com/lufia/plan9stats v0.0.0-20211012122336-39d0f177ccd0/go.mod h1:zJYVVT2jmtg6P3p1VtQj7WsuWi/y4VnjVBn7F8KPB3I=
|
||||
github.com/mattn/go-colorable v0.1.9/go.mod h1:u6P/XSegPjTcexA+o6vUJrdnUu04hMope9wVRipJSqc=
|
||||
github.com/mattn/go-colorable v0.1.12/go.mod h1:u5H1YNBxpqRaxsYJYSkiCWKzEfiAb1Gb520KVy5xxl4=
|
||||
github.com/mattn/go-colorable v0.1.14 h1:9A9LHSqF/7dyVVX6g0U9cwm9pG3kP9gSzcuIPHPsaIE=
|
||||
|
@ -373,6 +397,10 @@ github.com/mattn/go-runewidth v0.0.9/go.mod h1:H031xJmbD/WCDINGzjvQ9THkh0rPKHF+m
|
|||
github.com/mattn/go-runewidth v0.0.16 h1:E5ScNMtiwvlvB5paMFdw9p4kSQzbXFikJ5SQO6TULQc=
|
||||
github.com/mattn/go-runewidth v0.0.16/go.mod h1:Jdepj2loyihRzMpdS35Xk/zdY8IAYHsh153qUoGf23w=
|
||||
github.com/matttproud/golang_protobuf_extensions v1.0.1/go.mod h1:D8He9yQNgCq6Z5Ld7szi9bcBfOoFv/3dc6xSMkL2PC0=
|
||||
github.com/mdlayher/netlink v1.7.2 h1:/UtM3ofJap7Vl4QWCPDGXY8d3GIY2UGSDbK+QWmY8/g=
|
||||
github.com/mdlayher/netlink v1.7.2/go.mod h1:xraEF7uJbxLhc5fpHL4cPe221LI2bdttWlU+ZGLfQSw=
|
||||
github.com/mdlayher/socket v0.4.1 h1:eM9y2/jlbs1M615oshPQOHZzj6R6wMT7bX5NPiQvn2U=
|
||||
github.com/mdlayher/socket v0.4.1/go.mod h1:cAqeGjoufqdxWkD7DkpyS+wcefOtmu5OQ8KuoJGIReA=
|
||||
github.com/miekg/dns v1.1.56 h1:5imZaSeoRNvpM9SzWNhEcP9QliKiz20/dA2QabIGVnE=
|
||||
github.com/miekg/dns v1.1.56/go.mod h1:cRm6Oo2C8TY9ZS/TqsSrseAcncm74lfK5G+ikN2SWWY=
|
||||
github.com/minio/minio-go v0.0.0-20190131015406-c8a261de75c1 h1:jw16EimP5oAEM/2wt+SiEUov/YDyTCTDuPtIKgQIvk0=
|
||||
|
@ -381,6 +409,8 @@ github.com/mitchellh/go-homedir v1.1.0 h1:lukF9ziXFxDFPkA1vsr5zpc1XuPDn/wFntq5mG
|
|||
github.com/mitchellh/go-homedir v1.1.0/go.mod h1:SfyaCUpYCn1Vlf4IUYiD9fPX4A5wJrkLzIz1N1q0pr0=
|
||||
github.com/mitchellh/mapstructure v1.5.1-0.20231216201459-8508981c8b6c h1:cqn374mizHuIWj+OSJCajGr/phAmuMug9qIX3l9CflE=
|
||||
github.com/mitchellh/mapstructure v1.5.1-0.20231216201459-8508981c8b6c/go.mod h1:bFUtVrKA4DC2yAKiSyO/QUcy7e+RRV2QTWOzhPopBRo=
|
||||
github.com/moby/sys/userns v0.1.0 h1:tVLXkFOxVu9A64/yh59slHVv9ahO9UIev4JZusOLG/g=
|
||||
github.com/moby/sys/userns v0.1.0/go.mod h1:IHUYgu/kao6N8YZlp9Cf444ySSvCmDlmzUcYfDHOl28=
|
||||
github.com/modern-go/concurrent v0.0.0-20180228061459-e0a39a4cb421/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd/go.mod h1:6dJC0mAP4ikYIbvyc7fijjWJddQyLn8Ig3JB5CqoB9Q=
|
||||
github.com/modern-go/reflect2 v0.0.0-20180701023420-4b7aa43c6742/go.mod h1:bx2lNnkwVCuqBIxFjflWJWanXIb3RllmbCylyMrvgv0=
|
||||
|
@ -409,8 +439,10 @@ github.com/onsi/gomega v1.7.1/go.mod h1:XdKZgCCFLUoM/7CFJVPcG8C1xQ1AJ0vpAezJrB7J
|
|||
github.com/onsi/gomega v1.10.1/go.mod h1:iN09h71vgCQne3DLsj+A5owkum+a2tYe+TOCB1ybHNo=
|
||||
github.com/onsi/gomega v1.23.0 h1:/oxKu9c2HVap+F3PfKort2Hw5DEU+HGlW8n+tguWsys=
|
||||
github.com/onsi/gomega v1.23.0/go.mod h1:Z/NWtiqwBrwUt4/2loMmHL63EDLnYHmVbuBpDr2vQAg=
|
||||
github.com/opentracing-contrib/go-grpc v0.1.1 h1:Ws7IN1zyiL1DFqKQPhRXuKe5pLYzMfdxnC1qtajE2PE=
|
||||
github.com/opentracing-contrib/go-grpc v0.1.1/go.mod h1:Nu6sz+4zzgxXu8rvKfnwjBEmHsuhTigxRwV2RhELrS8=
|
||||
github.com/opencontainers/runtime-spec v1.2.0 h1:z97+pHb3uELt/yiAWD691HNHQIF07bE7dzrbT927iTk=
|
||||
github.com/opencontainers/runtime-spec v1.2.0/go.mod h1:jwyrGlmzljRJv/Fgzds9SsS/C5hL+LL3ko9hs6T5lQ0=
|
||||
github.com/opentracing-contrib/go-grpc v0.1.2 h1:MP16Ozc59kqqwn1v18aQxpeGZhsBanJ2iurZYaQSZ+g=
|
||||
github.com/opentracing-contrib/go-grpc v0.1.2/go.mod h1:glU6rl1Fhfp9aXUHkE36K2mR4ht8vih0ekOVlWKEUHM=
|
||||
github.com/opentracing/opentracing-go v1.1.0/go.mod h1:UkNAQd3GIcIGf0SeVgPpRdFStlNbqXla1AfSYxPUl2o=
|
||||
github.com/opentracing/opentracing-go v1.2.0 h1:uEJPy/1a5RIPAJ0Ov+OIO8OxWu77jEv+1B0VhjKrZUs=
|
||||
github.com/opentracing/opentracing-go v1.2.0/go.mod h1:GxEUsuufX4nBwe+T+Wl9TAgYrxe9dPLANfrWvHYVTgc=
|
||||
|
@ -420,14 +452,14 @@ github.com/pascaldekloe/goe v0.1.0 h1:cBOtyMzM9HTpWjXfbbunk26uA6nG3a8n06Wieeh0Mw
|
|||
github.com/pascaldekloe/goe v0.1.0/go.mod h1:lzWF7FIEvWOWxwDKqyGYQf6ZUaNfKdP144TG7ZOy1lc=
|
||||
github.com/patrickmn/go-cache v2.1.0+incompatible h1:HRMgzkcYKYpi3C8ajMPV8OFXaaRUnok+kx1WdO15EQc=
|
||||
github.com/patrickmn/go-cache v2.1.0+incompatible/go.mod h1:3Qf8kWWT7OJRJbdiICTKqZju1ZixQ/KpMGzzAfe6+WQ=
|
||||
github.com/pelletier/go-toml/v2 v2.2.3 h1:YmeHyLY8mFWbdkNWwpr+qIL2bEqT0o95WSdkNHvL12M=
|
||||
github.com/pelletier/go-toml/v2 v2.2.3/go.mod h1:MfCQTFTvCcUyyvvwm1+G6H/jORL20Xlb6rzQu9GuUkc=
|
||||
github.com/pelletier/go-toml/v2 v2.2.4 h1:mye9XuhQ6gvn5h28+VilKrrPoQVanw5PMw/TB0t5Ec4=
|
||||
github.com/pelletier/go-toml/v2 v2.2.4/go.mod h1:2gIqNv+qfxSVS7cM2xJQKtLSTLUE9V8t9Stt+h56mCY=
|
||||
github.com/philhofer/fwd v1.1.3-0.20240916144458-20a13a1f6b7c h1:dAMKvw0MlJT1GshSTtih8C2gDs04w8dReiOGXrGLNoY=
|
||||
github.com/philhofer/fwd v1.1.3-0.20240916144458-20a13a1f6b7c/go.mod h1:RqIHx9QI14HlwKwm98g9Re5prTQ6LdeRQn+gXJFxsJM=
|
||||
github.com/pierrec/lz4 v2.6.1+incompatible h1:9UY3+iC23yxF0UfGaYrGplQ+79Rg+h/q9FV9ix19jjM=
|
||||
github.com/pierrec/lz4 v2.6.1+incompatible/go.mod h1:pdkljMzZIN41W+lC3N2tnIh5sFi+IEE17M5jbnwPHcY=
|
||||
github.com/pires/go-proxyproto v0.8.0 h1:5unRmEAPbHXHuLjDg01CxJWf91cw3lKHc/0xzKpXEe0=
|
||||
github.com/pires/go-proxyproto v0.8.0/go.mod h1:iknsfgnH8EkjrMeMyvfKByp9TiBZCKZM0jx2xmKqnVY=
|
||||
github.com/pires/go-proxyproto v0.8.1 h1:9KEixbdJfhrbtjpz/ZwCdWDD2Xem0NZ38qMYaASJgp0=
|
||||
github.com/pires/go-proxyproto v0.8.1/go.mod h1:ZKAAyp3cgy5Y5Mo4n9AlScrkCZwUy0g3Jf+slqQVcuU=
|
||||
github.com/pkg/diff v0.0.0-20210226163009-20ebb0f2a09e/go.mod h1:pJLUxLENpZxwdsKMEsNbx1VGcRFpLqf3715MtcvvzbA=
|
||||
github.com/pkg/errors v0.8.0/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
github.com/pkg/errors v0.8.1/go.mod h1:bwawxfHBFNV+L2hUp1rHADufV3IMtnDRdf1r5NINEl0=
|
||||
|
@ -440,19 +472,21 @@ github.com/planetscale/vtprotobuf v0.6.1-0.20241121165744-79df5c4772f2/go.mod h1
|
|||
github.com/pmezard/go-difflib v1.0.0/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2 h1:Jamvg5psRIccs7FGNTlIRMkT8wgtp5eCXdBlqhYGL6U=
|
||||
github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2/go.mod h1:iKH77koFhYxTK1pcRnkKkqfTogsbg7gZNVY4sRDYZ/4=
|
||||
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c h1:ncq/mPwQF4JjgDlrVEn3C11VoGHZN7m8qihwgMEtzYw=
|
||||
github.com/power-devops/perfstat v0.0.0-20210106213030-5aafc221ea8c/go.mod h1:OmDBASR4679mdNQnz2pUhc2G8CO2JrUAVFDRBDP/hJE=
|
||||
github.com/prometheus/client_golang v0.9.1/go.mod h1:7SWBe2y4D6OKWSNQJUaRYU/AaXPKyh/dDVn+NZz0KFw=
|
||||
github.com/prometheus/client_golang v1.0.0/go.mod h1:db9x61etRT2tGnBNRi70OPL5FsnadC4Ky3P0J6CfImo=
|
||||
github.com/prometheus/client_golang v1.4.0/go.mod h1:e9GMxYsXl05ICDXkRhurwBS4Q3OK1iX/F2sw+iXX5zU=
|
||||
github.com/prometheus/client_golang v1.7.1/go.mod h1:PY5Wy2awLA44sXw4AOSfFBetzPP4j5+D6mVACh+pe2M=
|
||||
github.com/prometheus/client_golang v1.11.1/go.mod h1:Z6t4BnS23TR94PD6BsDNk8yVqroYurpAkEiz0P2BEV0=
|
||||
github.com/prometheus/client_golang v1.21.1 h1:DOvXXTqVzvkIewV/CDPFdejpMCGeMcbGCQ8YOmu+Ibk=
|
||||
github.com/prometheus/client_golang v1.21.1/go.mod h1:U9NM32ykUErtVBxdvD3zfi+EuFkkaBvMb09mIfe0Zgg=
|
||||
github.com/prometheus/client_golang v1.22.0 h1:rb93p9lokFEsctTys46VnV1kLCDpVZ0a/Y92Vm0Zc6Q=
|
||||
github.com/prometheus/client_golang v1.22.0/go.mod h1:R7ljNsLXhuQXYZYtw6GAE9AZg8Y7vEW5scdCXrWRXC0=
|
||||
github.com/prometheus/client_model v0.0.0-20180712105110-5c3871d89910/go.mod h1:MbSGuTsp3dbXC40dX6PRTWyKYBIrTGTE9sqQNg2J8bo=
|
||||
github.com/prometheus/client_model v0.0.0-20190129233127-fd36f4220a90/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
|
||||
github.com/prometheus/client_model v0.0.0-20190812154241-14fe0d1b01d4/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
|
||||
github.com/prometheus/client_model v0.2.0/go.mod h1:xMI15A0UPsDsEKsMN9yxemIoYk6Tm2C1GtYGdfGttqA=
|
||||
github.com/prometheus/client_model v0.6.1 h1:ZKSh/rekM+n3CeS952MLRAdFwIKqeY8b62p8ais2e9E=
|
||||
github.com/prometheus/client_model v0.6.1/go.mod h1:OrxVMOVHjw3lKMa8+x6HeMGkHMQyHDk9E3jmP2AmGiY=
|
||||
github.com/prometheus/client_model v0.6.2 h1:oBsgwpGs7iVziMvrGhE53c/GrLUsZdHnqNwqPLxwZyk=
|
||||
github.com/prometheus/client_model v0.6.2/go.mod h1:y3m2F6Gdpfy6Ut/GBsUqTWZqCUvMVzSfMLjcu6wAwpE=
|
||||
github.com/prometheus/common v0.4.1/go.mod h1:TNfzLD0ON7rHzMJeJkieUDPYmFC7Snx/y86RQel1bk4=
|
||||
github.com/prometheus/common v0.9.1/go.mod h1:yhUN8i9wzaXS3w1O07YhxHEBxD+W35wd8bs7vj7HSQ4=
|
||||
github.com/prometheus/common v0.10.0/go.mod h1:Tlit/dnDKsSWFlCLTWaA1cyBgKHSMdTB80sz/V91rCo=
|
||||
|
@ -464,8 +498,8 @@ github.com/prometheus/procfs v0.0.2/go.mod h1:TjEm7ze935MbeOT/UhFTIMYKhuLP4wbCsT
|
|||
github.com/prometheus/procfs v0.0.8/go.mod h1:7Qr8sr6344vo1JqZ6HhLceV9o3AJ1Ff+GxbHq6oeK9A=
|
||||
github.com/prometheus/procfs v0.1.3/go.mod h1:lV6e/gmhEcM9IjHGsFOCxxuZ+z1YqCvr4OA4YeYWdaU=
|
||||
github.com/prometheus/procfs v0.6.0/go.mod h1:cz+aTbrPOrUb4q7XlbU9ygM+/jj0fzG6c1xBZuNvfVA=
|
||||
github.com/prometheus/procfs v0.15.1 h1:YagwOFzUgYfKKHX6Dr+sHT7km/hxC76UB0learggepc=
|
||||
github.com/prometheus/procfs v0.15.1/go.mod h1:fB45yRUv8NstnjriLhBQLuOUt+WW4BsoGhij/e3PBqk=
|
||||
github.com/prometheus/procfs v0.16.1 h1:hZ15bTNuirocR6u0JZ6BAHHmwS1p8B4P6MRqxtzMyRg=
|
||||
github.com/prometheus/procfs v0.16.1/go.mod h1:teAbpZRB1iIAJYREa1LsoWUXykVXA1KlTmWl8x/U+Is=
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec h1:W09IVJc94icq4NjY3clb7Lk8O1qJ8BdBEF8z0ibU0rE=
|
||||
github.com/remyoudompheng/bigfft v0.0.0-20230129092748-24d4a6f8daec/go.mod h1:qqbHyh8v60DhA7CoWK5oRCqLrMHRGoxYCSS9EjAz6Eo=
|
||||
github.com/richardartoul/molecule v1.0.1-0.20240531184615-7ca0df43c0b3 h1:4+LEVOB87y175cLJC/mbsgKmoDOjrBldtXvioEy96WY=
|
||||
|
@ -480,18 +514,20 @@ github.com/russross/blackfriday/v2 v2.1.0 h1:JIOH55/0cWyOuilr9/qlrm0BSXldqnqwMsf
|
|||
github.com/russross/blackfriday/v2 v2.1.0/go.mod h1:+Rmxgy9KzJVeS9/2gXHxylqXiyQDYRxCVz55jmeOWTM=
|
||||
github.com/ryanuber/go-glob v1.0.0 h1:iQh3xXAumdQ+4Ufa5b25cRpC5TYKlno6hsv6Cb3pkBk=
|
||||
github.com/ryanuber/go-glob v1.0.0/go.mod h1:807d1WSdnB0XRJzKNil9Om6lcp/3a0v4qIHxIXzX/Yc=
|
||||
github.com/sagikazarmark/locafero v0.7.0 h1:5MqpDsTGNDhY8sGp0Aowyf0qKsPrhewaLSsFaodPcyo=
|
||||
github.com/sagikazarmark/locafero v0.7.0/go.mod h1:2za3Cg5rMaTMoG/2Ulr9AwtFaIppKXTRYnozin4aB5k=
|
||||
github.com/sagikazarmark/slog-shim v0.1.0 h1:diDBnUNK9N/354PgrxMywXnAwEr1QZcOr6gto+ugjYE=
|
||||
github.com/sagikazarmark/slog-shim v0.1.0/go.mod h1:SrcSrq8aKtyuqEI1uvTDTK1arOWRIczQRv+GVI1AkeQ=
|
||||
github.com/sagikazarmark/locafero v0.9.0 h1:GbgQGNtTrEmddYDSAH9QLRyfAHY12md+8YFTqyMTC9k=
|
||||
github.com/sagikazarmark/locafero v0.9.0/go.mod h1:UBUyz37V+EdMS3hDF3QWIiVr/2dPrx49OMO0Bn0hJqk=
|
||||
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529 h1:nn5Wsu0esKSJiIVhscUtVbo7ada43DJhG55ua/hjS5I=
|
||||
github.com/sean-/seed v0.0.0-20170313163322-e2103e2c3529/go.mod h1:DxrIzT+xaE7yg65j358z/aeFdxmN0P9QXhEzd20vsDc=
|
||||
github.com/secure-systems-lab/go-securesystemslib v0.9.0 h1:rf1HIbL64nUpEIZnjLZ3mcNEL9NBPB0iuVjyxvq3LZc=
|
||||
github.com/secure-systems-lab/go-securesystemslib v0.9.0/go.mod h1:DVHKMcZ+V4/woA/peqr+L0joiRXbPpQ042GgJckkFgw=
|
||||
github.com/shirou/gopsutil/v4 v4.25.4 h1:cdtFO363VEOOFrUCjZRh4XVJkb548lyF0q0uTeMqYPw=
|
||||
github.com/shirou/gopsutil/v4 v4.25.4/go.mod h1:xbuxyoZj+UsgnZrENu3lQivsngRR5BdjbJwf2fv4szA=
|
||||
github.com/sirupsen/logrus v1.2.0/go.mod h1:LxeOpSwHxABJmUn/MG1IvRgCAasNZTLOkJPxbbu5VWo=
|
||||
github.com/sirupsen/logrus v1.4.2/go.mod h1:tLMulIdttU9McNUspp0xgXVQah82FyeX6MwdIuYE2rE=
|
||||
github.com/sirupsen/logrus v1.6.0/go.mod h1:7uNnSEd1DgxDLC74fIahvMZmmYsHGZGEOFrfsX/uA88=
|
||||
github.com/sirupsen/logrus v1.7.0/go.mod h1:yWOB1SBYBC5VeMP7gHvWumXLIWorT60ONWic61uBYv0=
|
||||
github.com/sirupsen/logrus v1.9.3 h1:dueUQJ1C2q9oE3F7wvmSGAaVtTmUizReu6fjN8uqzbQ=
|
||||
github.com/sirupsen/logrus v1.9.3/go.mod h1:naHLuLoDiP4jHNo9R0sCBMtWGeIprob74mVsIT4qYEQ=
|
||||
github.com/sjmudd/stopwatch v0.1.1 h1:x45OvxFB5OtCkjvYtzRF5fWB857Jzjjk84Oyd5C5ebw=
|
||||
github.com/sjmudd/stopwatch v0.1.1/go.mod h1:BLw0oIQJ1YLXBO/q9ufK/SgnKBVIkC2qrm6uy78Zw6U=
|
||||
github.com/smartystreets/assertions v0.0.0-20190116191733-b6c0e53d7304/go.mod h1:OnSkiWE9lh6wB0YB77sQom3nweQdgAjqCqsofrRNTgc=
|
||||
|
@ -502,18 +538,20 @@ github.com/sourcegraph/conc v0.3.0 h1:OQTbbt6P72L20UqAkXXuLOj79LfEanQ+YQFNpLA9yS
|
|||
github.com/sourcegraph/conc v0.3.0/go.mod h1:Sdozi7LEKbFPqYX2/J+iBAM6HpqSLTASQIKqDmF7Mt0=
|
||||
github.com/spaolacci/murmur3 v1.1.0 h1:7c1g84S4BPRrfL5Xrdp6fOJ206sU9y293DDHaoy0bLI=
|
||||
github.com/spaolacci/murmur3 v1.1.0/go.mod h1:JwIasOWyU6f++ZhiEuf87xNszmSA2myDM2Kzu9HwQUA=
|
||||
github.com/spf13/afero v1.12.0 h1:UcOPyRBYczmFn6yvphxkn9ZEOY65cpwGKb5mL36mrqs=
|
||||
github.com/spf13/afero v1.12.0/go.mod h1:ZTlWwG4/ahT8W7T0WQ5uYmjI9duaLQGy3Q2OAl4sk/4=
|
||||
github.com/spf13/cast v1.7.1 h1:cuNEagBQEHWN1FnbGEjCXL2szYEXqfJPbP2HNUaca9Y=
|
||||
github.com/spf13/cast v1.7.1/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
|
||||
github.com/spf13/afero v1.14.0 h1:9tH6MapGnn/j0eb0yIXiLjERO8RB6xIVZRDCX7PtqWA=
|
||||
github.com/spf13/afero v1.14.0/go.mod h1:acJQ8t0ohCGuMN3O+Pv0V0hgMxNYDlvdk+VTfyZmbYo=
|
||||
github.com/spf13/cast v1.8.0 h1:gEN9K4b8Xws4EX0+a0reLmhq8moKn7ntRlQYgjPeCDk=
|
||||
github.com/spf13/cast v1.8.0/go.mod h1:ancEpBxwJDODSW/UG4rDrAqiKolqNNh2DX3mk86cAdo=
|
||||
github.com/spf13/cobra v1.9.1 h1:CXSaggrXdbHK9CF+8ywj8Amf7PBRmPCOJugH954Nnlo=
|
||||
github.com/spf13/cobra v1.9.1/go.mod h1:nDyEzZ8ogv936Cinf6g1RU9MRY64Ir93oCnqb9wxYW0=
|
||||
github.com/spf13/jwalterweatherman v1.1.0 h1:ue6voC5bR5F8YxI5S67j9i582FU4Qvo2bmqnqMYADFk=
|
||||
github.com/spf13/jwalterweatherman v1.1.0/go.mod h1:aNWZUN0dPAAO/Ljvb5BEdw96iTZ0EXowPYD95IqWIGo=
|
||||
github.com/spf13/pflag v1.0.6 h1:jFzHGLGAlb3ruxLB8MhbI6A8+AQX/2eW4qeyNZXNp2o=
|
||||
github.com/spf13/pflag v1.0.6/go.mod h1:McXfInJRrz4CZXVZOBLb0bTZqETkiAhM9Iw0y3An2Bg=
|
||||
github.com/spf13/viper v1.19.0 h1:RWq5SEjt8o25SROyN3z2OrDB9l7RPd3lwTWU8EcEdcI=
|
||||
github.com/spf13/viper v1.19.0/go.mod h1:GQUN9bilAbhU/jgc1bKs99f/suXKeUMct8Adx5+Ntkg=
|
||||
github.com/spf13/viper v1.20.1 h1:ZMi+z/lvLyPSCoNtFCpqjy0S4kPbirhpTMwl8BkW9X4=
|
||||
github.com/spf13/viper v1.20.1/go.mod h1:P9Mdzt1zoHIG8m2eZQinpiBjo6kCmZSKBClNNqjJvu4=
|
||||
github.com/spiffe/go-spiffe/v2 v2.5.0 h1:N2I01KCUkv1FAjZXJMwh95KK1ZIQLYbPfhaxw8WS0hE=
|
||||
github.com/spiffe/go-spiffe/v2 v2.5.0/go.mod h1:P+NxobPc6wXhVtINNtFjNWGBTreew1GBUCwT2wPmb7g=
|
||||
github.com/stretchr/objx v0.1.0/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.1.1/go.mod h1:HFkY916IF+rwdDfMAkV7OtwuqBVzrE8GR6GFx+wExME=
|
||||
github.com/stretchr/objx v0.4.0/go.mod h1:YvHI0jy2hoMjB+UWwv71VJQ9isScKT/TqJzVSSt89Yw=
|
||||
|
@ -542,8 +580,12 @@ github.com/tidwall/match v1.1.1/go.mod h1:eRSPERbgtNPcGhD8UCthc6PmLEQXEWd3PRB5JT
|
|||
github.com/tidwall/pretty v1.2.0/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
|
||||
github.com/tidwall/pretty v1.2.1 h1:qjsOFOWWQl+N3RsoF5/ssm1pHmJJwhjlSbZ51I6wMl4=
|
||||
github.com/tidwall/pretty v1.2.1/go.mod h1:ITEVvHYasfjBbM0u2Pg8T2nJnzm8xPwvNhhsoaGGjNU=
|
||||
github.com/tinylib/msgp v1.2.5 h1:WeQg1whrXRFiZusidTQqzETkRpGjFjcIhW6uqWH09po=
|
||||
github.com/tinylib/msgp v1.2.5/go.mod h1:ykjzy2wzgrlvpDCRc4LA8UXy6D8bzMSuAF3WD57Gok0=
|
||||
github.com/tinylib/msgp v1.3.0 h1:ULuf7GPooDaIlbyvgAxBV/FI7ynli6LZ1/nVUNu+0ww=
|
||||
github.com/tinylib/msgp v1.3.0/go.mod h1:ykjzy2wzgrlvpDCRc4LA8UXy6D8bzMSuAF3WD57Gok0=
|
||||
github.com/tklauser/go-sysconf v0.3.12 h1:0QaGUFOdQaIVdPgfITYzaTegZvdCjmYO52cSFAEVmqU=
|
||||
github.com/tklauser/go-sysconf v0.3.12/go.mod h1:Ho14jnntGE1fpdOqQEEaiKRpvIavV0hSfmBq8nJbHYI=
|
||||
github.com/tklauser/numcpus v0.6.1 h1:ng9scYS7az0Bk4OZLvrNXNSAO2Pxr1XXRAPyjhIx+Fk=
|
||||
github.com/tklauser/numcpus v0.6.1/go.mod h1:1XfjsgE2zo8GVw7POkMbHENHzVg3GzmoZ9fESEdAacY=
|
||||
github.com/tv42/httpunix v0.0.0-20150427012821-b75d8614f926/go.mod h1:9ESjWnEqriFuLhtthL60Sar/7RFoluCcXsuvEwTV5KM=
|
||||
github.com/uber/jaeger-client-go v2.30.0+incompatible h1:D6wyKGCecFaSRUpo8lCVbaOOb6ThwMmTEbhRwtKR97o=
|
||||
github.com/uber/jaeger-client-go v2.30.0+incompatible/go.mod h1:WVhlPFC8FDjOFMMWRy2pZqQJSXxYSwNYOkTr/Z6d3Kk=
|
||||
|
@ -556,14 +598,18 @@ github.com/yudai/golcs v0.0.0-20170316035057-ecda9a501e82/go.mod h1:lgjkn3NuSvDf
|
|||
github.com/yuin/goldmark v1.1.27/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.2.1/go.mod h1:3hX8gzYuyVAZsxl0MRgGTJEmQBFcNTphYh9decYSb74=
|
||||
github.com/yuin/goldmark v1.3.5/go.mod h1:mwnBkeHKe2W/ZEtQ+71ViKU8L12m81fl3OWwC1Zlc8k=
|
||||
github.com/yusufpapurcu/wmi v1.2.4 h1:zFUKzehAFReQwLys1b/iSMl+JQGSCSjtVqQn9bBrPo0=
|
||||
github.com/yusufpapurcu/wmi v1.2.4/go.mod h1:SBZ9tNy3G9/m5Oi98Zks0QjeHVDvuK0qfxQmPyzfmi0=
|
||||
github.com/z-division/go-zookeeper v1.0.0 h1:ULsCj0nP6+U1liDFWe+2oEF6o4amixoDcDlwEUghVUY=
|
||||
github.com/z-division/go-zookeeper v1.0.0/go.mod h1:6X4UioQXpvyezJJl4J9NHAJKsoffCwy5wCaaTktXjOA=
|
||||
go.etcd.io/etcd/api/v3 v3.5.19 h1:w3L6sQZGsWPuBxRQ4m6pPP3bVUtV8rjW033EGwlr0jw=
|
||||
go.etcd.io/etcd/api/v3 v3.5.19/go.mod h1:QqKGViq4KTgOG43dr/uH0vmGWIaoJY3ggFi6ZH0TH/U=
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.19 h1:9VsyGhg0WQGjDWWlDI4VuaS9PZJGNbPkaHEIuLwtixk=
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.19/go.mod h1:qaOi1k4ZA9lVLejXNvyPABrVEe7VymMF2433yyRQ7O0=
|
||||
go.etcd.io/etcd/client/v3 v3.5.19 h1:+4byIz6ti3QC28W0zB0cEZWwhpVHXdrKovyycJh1KNo=
|
||||
go.etcd.io/etcd/client/v3 v3.5.19/go.mod h1:FNzyinmMIl0oVsty1zA3hFeUrxXI/JpEnz4sG+POzjU=
|
||||
github.com/zeebo/errs v1.4.0 h1:XNdoD/RRMKP7HD0UhJnIzUy74ISdGGxURlYG8HSWSfM=
|
||||
github.com/zeebo/errs v1.4.0/go.mod h1:sgbWHsvVuTPHcqJJGQ1WhI5KbWlHYz+2+2C/LSEtCw4=
|
||||
go.etcd.io/etcd/api/v3 v3.5.21 h1:A6O2/JDb3tvHhiIz3xf9nJ7REHvtEFJJ3veW3FbCnS8=
|
||||
go.etcd.io/etcd/api/v3 v3.5.21/go.mod h1:c3aH5wcvXv/9dqIw2Y810LDXJfhSYdHQ0vxmP3CCHVY=
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.21 h1:lPBu71Y7osQmzlflM9OfeIV2JlmpBjqBNlLtcoBqUTc=
|
||||
go.etcd.io/etcd/client/pkg/v3 v3.5.21/go.mod h1:BgqT/IXPjK9NkeSDjbzwsHySX3yIle2+ndz28nVsjUs=
|
||||
go.etcd.io/etcd/client/v3 v3.5.21 h1:T6b1Ow6fNjOLOtM0xSoKNQt1ASPCLWrF9XMHcH9pEyY=
|
||||
go.etcd.io/etcd/client/v3 v3.5.21/go.mod h1:mFYy67IOqmbRf/kRUvsHixzo3iG+1OF2W2+jVIQRAnU=
|
||||
go.opentelemetry.io/auto/sdk v1.1.0 h1:cH53jehLUN6UFLY71z+NDOiNJqDdPRaXzTel0sJySYA=
|
||||
go.opentelemetry.io/auto/sdk v1.1.0/go.mod h1:3wSPjt5PWp2RhlCcmmOial7AvC4DQqZb7a7wCow3W8A=
|
||||
go.opentelemetry.io/contrib/detectors/gcp v1.35.0 h1:bGvFt68+KTiAKFlacHW6AhA56GF2rS0bdD3aJYEnmzA=
|
||||
|
@ -574,8 +620,8 @@ go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0 h1:sbiXRND
|
|||
go.opentelemetry.io/contrib/instrumentation/net/http/otelhttp v0.60.0/go.mod h1:69uWxva0WgAA/4bu2Yy70SLDBwZXuQ6PbBpbsa5iZrQ=
|
||||
go.opentelemetry.io/otel v1.35.0 h1:xKWKPxrxB6OtMCbmMY021CqC45J+3Onta9MqjhnusiQ=
|
||||
go.opentelemetry.io/otel v1.35.0/go.mod h1:UEqy8Zp11hpkUrL73gSlELM0DupHoiq72dR+Zqel/+Y=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0 h1:WDdP9acbMYjbKIyJUhTvtzj601sVJOqgWdUxSdR/Ysc=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.29.0/go.mod h1:BLbf7zbNIONBLPwvFnwNHGj4zge8uTCM/UPIVW1Mq2I=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.35.0 h1:PB3Zrjs1sG1GBX51SXyTSoOTqcDglmsk7nT6tkKPb/k=
|
||||
go.opentelemetry.io/otel/exporters/stdout/stdoutmetric v1.35.0/go.mod h1:U2R3XyVPzn0WX7wOIypPuptulsMcPDPs/oiSVOMVnHY=
|
||||
go.opentelemetry.io/otel/metric v1.35.0 h1:0znxYu2SNyuMSQT4Y9WDWej0VpcsxkuklLa4/siN90M=
|
||||
go.opentelemetry.io/otel/metric v1.35.0/go.mod h1:nKVFgxBZ2fReX6IlyW28MgZojkoAkJGaE8CpgeAU3oE=
|
||||
go.opentelemetry.io/otel/sdk v1.35.0 h1:iPctf8iprVySXSKJffSS79eOjl9pvxV9ZqOWT0QejKY=
|
||||
|
@ -606,11 +652,11 @@ golang.org/x/crypto v0.0.0-20191011191535-87dc89f01550/go.mod h1:yigFU9vqHzYiE8U
|
|||
golang.org/x/crypto v0.0.0-20200622213623-75b288015ac9/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20201002170205-7f63de1d35b0/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.0.0-20201016220609-9e8e0b390897/go.mod h1:LzIPMQfyMNhhGPhUkYOs5KpL4U8rLKemX1yGLhDgUto=
|
||||
golang.org/x/crypto v0.36.0 h1:AnAEvhDddvBdpY+uR+MyHmuZzzNqXSe/GvuDeob5L34=
|
||||
golang.org/x/crypto v0.36.0/go.mod h1:Y4J0ReaxCR1IMaabaSMugxJES1EpwhBHhv2bDHklZvc=
|
||||
golang.org/x/crypto v0.38.0 h1:jt+WWG8IZlBnVbomuhg2Mdq0+BBQaHbtqHEFEigjUV8=
|
||||
golang.org/x/crypto v0.38.0/go.mod h1:MvrbAqul58NNYPKnOra203SB9vpuZW0e+RRZV+Ggqjw=
|
||||
golang.org/x/exp v0.0.0-20190121172915-509febef88a4/go.mod h1:CJ0aWSM057203Lf6IL+f9T1iT9GByDxfZKAQTCR3kQA=
|
||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394 h1:nDVHiLt8aIbd/VzvPWN6kSOPE7+F/fNFDSXLVYkE/Iw=
|
||||
golang.org/x/exp v0.0.0-20250305212735-054e65f0b394/go.mod h1:sIifuuw/Yco/y6yb6+bDNfyeQ/MdPUy/hKEMYQV17cM=
|
||||
golang.org/x/exp v0.0.0-20250506013437-ce4c2cf36ca6 h1:y5zboxd6LQAqYIhHnB48p0ByQ/GnQx2BE33L8BOHQkI=
|
||||
golang.org/x/exp v0.0.0-20250506013437-ce4c2cf36ca6/go.mod h1:U6Lno4MTRCDY+Ba7aCcauB9T60gsv5s4ralQzP72ZoQ=
|
||||
golang.org/x/lint v0.0.0-20181026193005-c67002cb31c3/go.mod h1:UVdnD1Gm6xHRNCYTkRU2/jEulfH38KcIWyp/GAMgvoE=
|
||||
golang.org/x/lint v0.0.0-20190227174305-5b3e6a55c961/go.mod h1:wehouNa3lNwaWXcvxsM5YxQ5yQlVC4a0KAMCusXpPoU=
|
||||
golang.org/x/lint v0.0.0-20190313153728-d0100b6bd8b3/go.mod h1:6SW0HCj/g11FgYtHlgUYUwCkIfeOF89ocIRzGO/8vkc=
|
||||
|
@ -639,12 +685,12 @@ golang.org/x/net v0.0.0-20201021035429-f5854403a974/go.mod h1:sp8m0HH+o8qH0wwXwY
|
|||
golang.org/x/net v0.0.0-20201202161906-c7110b5ffcbb/go.mod h1:sp8m0HH+o8qH0wwXwYZr8TS3Oi6o0r6Gce1SSxlDquU=
|
||||
golang.org/x/net v0.0.0-20210405180319-a5a99cb37ef4/go.mod h1:p54w0d4576C0XHj96bSt6lcn1PtDYWL6XObtHCRCNQM=
|
||||
golang.org/x/net v0.0.0-20210610132358-84b48f89b13b/go.mod h1:9nx3DQGgdP8bBQD5qxJ1jj9UTztislL4KSBs9R2vV5Y=
|
||||
golang.org/x/net v0.37.0 h1:1zLorHbz+LYj7MQlSf1+2tPIIgibq2eL5xkrGk6f+2c=
|
||||
golang.org/x/net v0.37.0/go.mod h1:ivrbrMbzFq5J41QOQh0siUuly180yBYtLp+CKbEaFx8=
|
||||
golang.org/x/net v0.40.0 h1:79Xs7wF06Gbdcg4kdCCIQArK11Z1hr5POQ6+fIYHNuY=
|
||||
golang.org/x/net v0.40.0/go.mod h1:y0hY0exeL2Pku80/zKK7tpntoX23cqL3Oa6njdgRtds=
|
||||
golang.org/x/oauth2 v0.0.0-20180821212333-d2e6202438be/go.mod h1:N/0e6XlmueqKjAGxoOufVs8QHGRruUQn6yWY3a++T0U=
|
||||
golang.org/x/oauth2 v0.0.0-20190226205417-e64efc72b421/go.mod h1:gOpvHmFTYa4IltrdGE7lF6nIHvwfUNPOp7c8zoXwtLw=
|
||||
golang.org/x/oauth2 v0.28.0 h1:CrgCKl8PPAVtLnU3c+EDw6x11699EWlsDeWNWKdIOkc=
|
||||
golang.org/x/oauth2 v0.28.0/go.mod h1:onh5ek6nERTohokkhCD/y2cV4Do3fxFHFuAejCkRWT8=
|
||||
golang.org/x/oauth2 v0.30.0 h1:dnDm7JmhM45NNpd8FDDeLhK6FwqbOf4MLCM9zb1BOHI=
|
||||
golang.org/x/oauth2 v0.30.0/go.mod h1:B++QgG3ZKulg6sRPGD/mqlHQs5rB3Ml9erfeDY7xKlU=
|
||||
golang.org/x/sync v0.0.0-20180314180146-1d60e4601c6f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20181108010431-42b317875d0f/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20181221193216-37e7f081c4d4/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
|
@ -653,8 +699,8 @@ golang.org/x/sync v0.0.0-20190911185100-cd5d95a43a6e/go.mod h1:RxMgew5VJxzue5/jJ
|
|||
golang.org/x/sync v0.0.0-20201020160332-67f06af15bc9/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20201207232520-09787c993a3a/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.0.0-20210220032951-036812b2e83c/go.mod h1:RxMgew5VJxzue5/jJTE5uejpjVlOe/izrB70Jof72aM=
|
||||
golang.org/x/sync v0.12.0 h1:MHc5BpPuC30uJk597Ri8TV3CNZcTLu6B6z4lJy+g6Jw=
|
||||
golang.org/x/sync v0.12.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
|
||||
golang.org/x/sync v0.14.0 h1:woo0S4Yywslg6hp4eUFjTVOyKt0RookbpAHG4c1HmhQ=
|
||||
golang.org/x/sync v0.14.0/go.mod h1:1dzgHSNfp02xaA81J2MS99Qcpr2w7fw1gpm99rleRqA=
|
||||
golang.org/x/sys v0.0.0-20180830151530-49385e6e1522/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20180905080454-ebe1bf3edb33/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
golang.org/x/sys v0.0.0-20180909124046-d0be0721c37e/go.mod h1:STP8DvDyc/dI5b8T5hshtkjS+E42TnysNCUPdjciGhY=
|
||||
|
@ -664,6 +710,7 @@ golang.org/x/sys v0.0.0-20190215142949-d0b11bdaac8a/go.mod h1:STP8DvDyc/dI5b8T5h
|
|||
golang.org/x/sys v0.0.0-20190412213103-97732733099d/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190422165155-953cdadca894/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190904154756-749cb33beabd/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20190916202348-b4ddaad3f8a3/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20191005200804-aed5e4c7ecf9/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20191026070338-33540a1f6037/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20191112214154-59a1497f0cea/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
|
@ -677,6 +724,7 @@ golang.org/x/sys v0.0.0-20200615200032-f1bc736245b1/go.mod h1:h1NjWce9XRLGQEsW7w
|
|||
golang.org/x/sys v0.0.0-20200625212154-ddb9806d33ae/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20200930185726-fdedc70b468f/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201119102817-f84b799fce68/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20201204225414-ed752295db88/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210112080510-489259a85091/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210124154548-22da62e12c0c/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
golang.org/x/sys v0.0.0-20210330210617-4fbd30eecc44/go.mod h1:h1NjWce9XRLGQEsW7wpKNCjG9DtNlClVuFLEZdDNbEs=
|
||||
|
@ -688,18 +736,21 @@ golang.org/x/sys v0.0.0-20210927094055-39ccf1dd6fa6/go.mod h1:oPkhp1MJrh7nUepCBc
|
|||
golang.org/x/sys v0.0.0-20211025201205-69cdffdb9359/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220503163025-988cb79eb6c6/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220627191245-f75cf1eec38b/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.0.0-20220715151400-c0bba94af5f8/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.6.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.31.0 h1:ioabZlmFYtWhL+TRYpcnNlLwhyxaM9kWTDEmfnprqik=
|
||||
golang.org/x/sys v0.31.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/sys v0.8.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.11.0/go.mod h1:oPkhp1MJrh7nUepCBck5+mAzfO9JrbApNNgaTdGDITg=
|
||||
golang.org/x/sys v0.33.0 h1:q3i8TbbEz+JRD9ywIRlyRAQbM0qF7hu24q3teo2hbuw=
|
||||
golang.org/x/sys v0.33.0/go.mod h1:BJP2sWEmIv4KK5OTEluFJCKSidICx8ciO85XgH3Ak8k=
|
||||
golang.org/x/term v0.0.0-20201126162022-7de9c90e9dd1/go.mod h1:bj7SfCRtBDWHUb9snDiAeCFNEtKQo2Wmx5Cou7ajbmo=
|
||||
golang.org/x/term v0.30.0 h1:PQ39fJZ+mfadBm0y5WlL4vlM7Sx1Hgf13sMIY2+QS9Y=
|
||||
golang.org/x/term v0.30.0/go.mod h1:NYYFdzHoI5wRh/h5tDMdMqCqPJZEuNqVR5xJLd/n67g=
|
||||
golang.org/x/term v0.32.0 h1:DR4lr0TjUs3epypdhTOkMmuF5CDFJ/8pOnbzMZPQ7bg=
|
||||
golang.org/x/term v0.32.0/go.mod h1:uZG1FhGx848Sqfsq4/DlJr3xGGsYMu/L5GW4abiaEPQ=
|
||||
golang.org/x/text v0.3.0/go.mod h1:NqM8EUOU14njkJ3fqMW+pc6Ldnwhi/IjpwHt7yyuwOQ=
|
||||
golang.org/x/text v0.3.2/go.mod h1:bEr9sfX3Q8Zfm5fL9x+3itogRgK3+ptLWKqgva+5dAk=
|
||||
golang.org/x/text v0.3.3/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.3.6/go.mod h1:5Zoc/QRtKVWzQhOtBMvqHzDpF6irO9z98xDceosuGiQ=
|
||||
golang.org/x/text v0.23.0 h1:D71I7dUrlY+VX0gQShAThNGHFxZ13dGLBHQLVl1mJlY=
|
||||
golang.org/x/text v0.23.0/go.mod h1:/BLNzu4aZCJ1+kcD0DNRotWKage4q2rGVAg4o22unh4=
|
||||
golang.org/x/text v0.25.0 h1:qVyWApTSYLk/drJRO5mDlNYskwQznZmkpV2c8q9zls4=
|
||||
golang.org/x/text v0.25.0/go.mod h1:WEdwpYrmk1qmdHvhkSTNPm3app7v4rsT8F2UD6+VHIA=
|
||||
golang.org/x/time v0.11.0 h1:/bpjEDfN9tkoN/ryeYHnv5hcMlc8ncjMcM4XBk5NWV0=
|
||||
golang.org/x/time v0.11.0/go.mod h1:CDIdPxbZBQxdj6cxyCIdrNogrJKMJ7pr37NYpMcMDSg=
|
||||
golang.org/x/tools v0.0.0-20180917221912-90fa682c2a6e/go.mod h1:n7NCudcB/nEzxVGmLbDWY5pfWTLqBcC2KZ6jyYvM4mQ=
|
||||
|
@ -713,8 +764,8 @@ golang.org/x/tools v0.0.0-20200619180055-7c47624df98f/go.mod h1:EkVYQZoAsY45+roY
|
|||
golang.org/x/tools v0.0.0-20201224043029-2b0845dc783e/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/tools v0.0.0-20210106214847-113979e3529a/go.mod h1:emZCQorbCU4vsT4fOWvOPXz4eW1wZW4PmDk9uLelYpA=
|
||||
golang.org/x/tools v0.1.1/go.mod h1:o0xws9oXOQQZyjljx8fwUC0k7L1pTE6eaCbjGeHmOkk=
|
||||
golang.org/x/tools v0.31.0 h1:0EedkvKDbh+qistFTd0Bcwe/YLh4vHwWEkiI0toFIBU=
|
||||
golang.org/x/tools v0.31.0/go.mod h1:naFTU+Cev749tSJRXJlna0T3WxKvb1kWEx15xA4SdmQ=
|
||||
golang.org/x/tools v0.33.0 h1:4qz2S3zmRxbGIhDIAgjxvFutSvH5EfnsYrRBj0UI0bc=
|
||||
golang.org/x/tools v0.33.0/go.mod h1:CIJMaWEY88juyUfo7UbgPqbC8rU2OqfAV1h2Qp0oMYI=
|
||||
golang.org/x/xerrors v0.0.0-20190717185122-a985d3407aa7/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191011141410-1b5146add898/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
golang.org/x/xerrors v0.0.0-20191204190536-9bdfabe68543/go.mod h1:I/5z698sn9Ka8TeJc9MKroUUfqBBauWjQqLJ2OPfmY0=
|
||||
|
@ -723,26 +774,26 @@ golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da h1:noIWHXmPHxILtqtCOPIhS
|
|||
golang.org/x/xerrors v0.0.0-20240903120638-7835f813f4da/go.mod h1:NDW/Ps6MPRej6fsCIbMTohpP40sJ/P/vI1MoTEGwX90=
|
||||
gonum.org/v1/gonum v0.15.1 h1:FNy7N6OUZVUaWG9pTiD+jlhdQ3lMP+/LcTpJ6+a8sQ0=
|
||||
gonum.org/v1/gonum v0.15.1/go.mod h1:eZTZuRFrzu5pcyjN5wJhcIhnUdNijYxX1T2IcrOGY0o=
|
||||
google.golang.org/api v0.226.0 h1:9A29y1XUD+YRXfnHkO66KggxHBZWg9LsTGqm7TkUvtQ=
|
||||
google.golang.org/api v0.226.0/go.mod h1:WP/0Xm4LVvMOCldfvOISnWquSRWbG2kArDZcg+W2DbY=
|
||||
google.golang.org/api v0.233.0 h1:iGZfjXAJiUFSSaekVB7LzXl6tRfEKhUN7FkZN++07tI=
|
||||
google.golang.org/api v0.233.0/go.mod h1:TCIVLLlcwunlMpZIhIp7Ltk77W+vUSdUKAAIlbxY44c=
|
||||
google.golang.org/appengine v1.1.0/go.mod h1:EbEs0AVv82hx2wNQdGPgUI5lhzA/G0D9YwlJXL52JkM=
|
||||
google.golang.org/appengine v1.4.0/go.mod h1:xpcJRLb0r/rnEns0DIKYYv+WjYCduHsrkT7/EB5XEv4=
|
||||
google.golang.org/genproto v0.0.0-20180817151627-c66870c02cf8/go.mod h1:JiN7NxoALGmiZfu7CAH4rXhgtRTLTxftemlI0sWmxmc=
|
||||
google.golang.org/genproto v0.0.0-20190819201941-24fa4b261c55/go.mod h1:DMBHOl98Agz4BDEuKkezgsaosCRResVns1a3J2ZsMNc=
|
||||
google.golang.org/genproto v0.0.0-20200423170343-7949de9c1215/go.mod h1:55QSHmfGQM9UVYDPBsyGGes0y52j32PQ3BqQfXhyH3c=
|
||||
google.golang.org/genproto v0.0.0-20250313205543-e70fdf4c4cb4 h1:kCjWYliqPA8g5z87mbjnf/cdgQqMzBfp9xYre5qKu2A=
|
||||
google.golang.org/genproto v0.0.0-20250313205543-e70fdf4c4cb4/go.mod h1:SqIx1NV9hcvqdLHo7uNZDS5lrUJybQ3evo3+z/WBfA0=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250313205543-e70fdf4c4cb4 h1:IFnXJq3UPB3oBREOodn1v1aGQeZYQclEmvWRMN0PSsY=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250313205543-e70fdf4c4cb4/go.mod h1:c8q6Z6OCqnfVIqUFJkCzKcrj8eCvUrz+K4KRzSTuANg=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250313205543-e70fdf4c4cb4 h1:iK2jbkWL86DXjEx0qiHcRE9dE4/Ahua5k6V8OWFb//c=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250313205543-e70fdf4c4cb4/go.mod h1:LuRYeWDFV6WOn90g357N17oMCaxpgCnbi/44qJvDn2I=
|
||||
google.golang.org/genproto v0.0.0-20250512202823-5a2f75b736a9 h1:0DnDgelxbooHLt0nyiPeCP0zrH/RL+UG558i1oNU1xE=
|
||||
google.golang.org/genproto v0.0.0-20250512202823-5a2f75b736a9/go.mod h1:IuQRZAKkz+Mhos3ZZ0+hcGaTmLuuTuGw344uzwztGl8=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250512202823-5a2f75b736a9 h1:WvBuA5rjZx9SNIzgcU53OohgZy6lKSus++uY4xLaWKc=
|
||||
google.golang.org/genproto/googleapis/api v0.0.0-20250512202823-5a2f75b736a9/go.mod h1:W3S/3np0/dPWsWLi1h/UymYctGXaGBM2StwzD0y140U=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250512202823-5a2f75b736a9 h1:IkAfh6J/yllPtpYFU0zZN1hUPYdT0ogkBT/9hMxHjvg=
|
||||
google.golang.org/genproto/googleapis/rpc v0.0.0-20250512202823-5a2f75b736a9/go.mod h1:qQ0YXyHHx3XkvlzUtpXDkS29lDSafHMZBAZDc03LQ3A=
|
||||
google.golang.org/grpc v1.19.0/go.mod h1:mqu4LbDTu4XGKhr4mRzUsmM4RtVoemTSY81AxZiDr8c=
|
||||
google.golang.org/grpc v1.23.0/go.mod h1:Y5yQAOtifL1yxbo5wqy6BxZv8vAUGQwXBOALyacEbxg=
|
||||
google.golang.org/grpc v1.25.1/go.mod h1:c3i+UQWmh7LiEpx4sFZnkU36qjEYZ0imhYfXVyQciAY=
|
||||
google.golang.org/grpc v1.27.0/go.mod h1:qbnxyOmOxrQa7FizSgH+ReBfzJrCY1pSN7KXBS8abTk=
|
||||
google.golang.org/grpc v1.29.1/go.mod h1:itym6AZVZYACWQqET3MqgPpjcuV5QH3BxFS3IjizoKk=
|
||||
google.golang.org/grpc v1.71.0 h1:kF77BGdPTQ4/JZWMlb9VpJ5pa25aqvVqogsxNHHdeBg=
|
||||
google.golang.org/grpc v1.71.0/go.mod h1:H0GRtasmQOh9LkFoCPDu3ZrwUtD1YGE+b2vYBYd/8Ec=
|
||||
google.golang.org/grpc v1.72.1 h1:HR03wO6eyZ7lknl75XlxABNVLLFc2PAb6mHlYh756mA=
|
||||
google.golang.org/grpc v1.72.1/go.mod h1:wH5Aktxcg25y1I3w7H69nHfXdOG3UiadoBtjh3izSDM=
|
||||
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.5.1 h1:F29+wU6Ee6qgu9TddPgooOdaqsxTMunOoj8KA5yuS5A=
|
||||
google.golang.org/grpc/cmd/protoc-gen-go-grpc v1.5.1/go.mod h1:5KF+wpkbTSbGcR9zteSqZV6fqFOWBl4Yde8En8MryZA=
|
||||
google.golang.org/grpc/examples v0.0.0-20250204041003-947e2a4be2ba h1:w92RAwwmP8PEc4O6JrGzSoUrL/eE53n2wIG7NAcedM8=
|
||||
|
@ -754,8 +805,8 @@ google.golang.org/protobuf v1.20.1-0.20200309200217-e05f789c0967/go.mod h1:A+miE
|
|||
google.golang.org/protobuf v1.21.0/go.mod h1:47Nbq4nVaFHyn7ilMalzfO3qCViNmqZ2kzikPIcrTAo=
|
||||
google.golang.org/protobuf v1.23.0/go.mod h1:EGpADcykh3NcUnDUJcl1+ZksZNG86OlYog2l/sGQquU=
|
||||
google.golang.org/protobuf v1.26.0-rc.1/go.mod h1:jlhhOSvTdKEhbULTjvd4ARK9grFBp09yW+WbY/TyQbw=
|
||||
google.golang.org/protobuf v1.36.5 h1:tPhr+woSbjfYvY6/GPufUoYizxw1cF/yFoxJ2fmpwlM=
|
||||
google.golang.org/protobuf v1.36.5/go.mod h1:9fA7Ob0pmnwhb644+1+CVWFRbNajQ6iRojtC/QF5bRE=
|
||||
google.golang.org/protobuf v1.36.6 h1:z1NpPI8ku2WgiWnf+t9wTPsn6eP1L7ksHUlkfLvd9xY=
|
||||
google.golang.org/protobuf v1.36.6/go.mod h1:jduwjTPXsFjZGTmRluh+L6NjiWu7pchiJ2/5YcXBHnY=
|
||||
gopkg.in/DataDog/dd-trace-go.v1 v1.69.1 h1:grTElrPaCfxUsrJjyPLHlVPbmlKVzWMxVdcBrGZSzEk=
|
||||
gopkg.in/DataDog/dd-trace-go.v1 v1.69.1/go.mod h1:U9AOeBHNAL95JXcd/SPf4a7O5GNeF/yD13sJtli/yaU=
|
||||
gopkg.in/alecthomas/kingpin.v2 v2.2.6/go.mod h1:FMv+mEhP44yOT+4EoQTLFTRgOQ1FBLkstjWtayDeSgw=
|
||||
|
@ -788,26 +839,26 @@ gopkg.in/yaml.v3 v3.0.1 h1:fxVm/GzAzEWqLHuvctI91KS9hhNmmWOoWu0XTYJS7CA=
|
|||
gopkg.in/yaml.v3 v3.0.1/go.mod h1:K4uyk7z7BCEPqu6E+C64Yfv1cQ7kz7rIZviUmN+EgEM=
|
||||
honnef.co/go/tools v0.0.0-20190102054323-c2f93a96b099/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
honnef.co/go/tools v0.0.0-20190523083050-ea95bdfd59fc/go.mod h1:rf3lG4BRIbNafJWhAfAdb/ePZxsR/4RtNHQocxwk9r4=
|
||||
modernc.org/cc/v4 v4.24.4 h1:TFkx1s6dCkQpd6dKurBNmpo+G8Zl4Sq/ztJ+2+DEsh0=
|
||||
modernc.org/cc/v4 v4.24.4/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0=
|
||||
modernc.org/ccgo/v4 v4.23.16 h1:Z2N+kk38b7SfySC1ZkpGLN2vthNJP1+ZzGZIlH7uBxo=
|
||||
modernc.org/ccgo/v4 v4.23.16/go.mod h1:nNma8goMTY7aQZQNTyN9AIoJfxav4nvTnvKThAeMDdo=
|
||||
modernc.org/fileutil v1.3.0 h1:gQ5SIzK3H9kdfai/5x41oQiKValumqNTDXMvKo62HvE=
|
||||
modernc.org/fileutil v1.3.0/go.mod h1:XatxS8fZi3pS8/hKG2GH/ArUogfxjpEKs3Ku3aK4JyQ=
|
||||
modernc.org/gc/v2 v2.6.3 h1:aJVhcqAte49LF+mGveZ5KPlsp4tdGdAOT4sipJXADjw=
|
||||
modernc.org/gc/v2 v2.6.3/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito=
|
||||
modernc.org/libc v1.61.13 h1:3LRd6ZO1ezsFiX1y+bHd1ipyEHIJKvuprv0sLTBwLW8=
|
||||
modernc.org/libc v1.61.13/go.mod h1:8F/uJWL/3nNil0Lgt1Dpz+GgkApWh04N3el3hxJcA6E=
|
||||
modernc.org/cc/v4 v4.26.1 h1:+X5NtzVBn0KgsBCBe+xkDC7twLb/jNVj9FPgiwSQO3s=
|
||||
modernc.org/cc/v4 v4.26.1/go.mod h1:uVtb5OGqUKpoLWhqwNQo/8LwvoiEBLvZXIQ/SmO6mL0=
|
||||
modernc.org/ccgo/v4 v4.28.0 h1:rjznn6WWehKq7dG4JtLRKxb52Ecv8OUGah8+Z/SfpNU=
|
||||
modernc.org/ccgo/v4 v4.28.0/go.mod h1:JygV3+9AV6SmPhDasu4JgquwU81XAKLd3OKTUDNOiKE=
|
||||
modernc.org/fileutil v1.3.1 h1:8vq5fe7jdtEvoCf3Zf9Nm0Q05sH6kGx0Op2CPx1wTC8=
|
||||
modernc.org/fileutil v1.3.1/go.mod h1:HxmghZSZVAz/LXcMNwZPA/DRrQZEVP9VX0V4LQGQFOc=
|
||||
modernc.org/gc/v2 v2.6.5 h1:nyqdV8q46KvTpZlsw66kWqwXRHdjIlJOhG6kxiV/9xI=
|
||||
modernc.org/gc/v2 v2.6.5/go.mod h1:YgIahr1ypgfe7chRuJi2gD7DBQiKSLMPgBQe9oIiito=
|
||||
modernc.org/libc v1.65.6 h1:OhJUhmuJ6MVZdqL5qmnd0/my46DKGFhSX4WOR7ijfyE=
|
||||
modernc.org/libc v1.65.6/go.mod h1:MOiGAM9lrMBT9L8xT1nO41qYl5eg9gCp9/kWhz5L7WA=
|
||||
modernc.org/mathutil v1.7.1 h1:GCZVGXdaN8gTqB1Mf/usp1Y/hSqgI2vAGGP4jZMCxOU=
|
||||
modernc.org/mathutil v1.7.1/go.mod h1:4p5IwJITfppl0G4sUEDtCr4DthTaT47/N3aT6MhfgJg=
|
||||
modernc.org/memory v1.8.2 h1:cL9L4bcoAObu4NkxOlKWBWtNHIsnnACGF/TbqQ6sbcI=
|
||||
modernc.org/memory v1.8.2/go.mod h1:ZbjSvMO5NQ1A2i3bWeDiVMxIorXwdClKE/0SZ+BMotU=
|
||||
modernc.org/memory v1.10.0 h1:fzumd51yQ1DxcOxSO+S6X7+QTuVU+n8/Aj7swYjFfC4=
|
||||
modernc.org/memory v1.10.0/go.mod h1:/JP4VbVC+K5sU2wZi9bHoq2MAkCnrt2r98UGeSK7Mjw=
|
||||
modernc.org/opt v0.1.4 h1:2kNGMRiUjrp4LcaPuLY2PzUfqM/w9N23quVwhKt5Qm8=
|
||||
modernc.org/opt v0.1.4/go.mod h1:03fq9lsNfvkYSfxrfUhZCWPk1lm4cq4N+Bh//bEtgns=
|
||||
modernc.org/sortutil v1.2.1 h1:+xyoGf15mM3NMlPDnFqrteY07klSFxLElE2PVuWIJ7w=
|
||||
modernc.org/sortutil v1.2.1/go.mod h1:7ZI3a3REbai7gzCLcotuw9AC4VZVpYMjDzETGsSMqJE=
|
||||
modernc.org/sqlite v1.36.1 h1:bDa8BJUH4lg6EGkLbahKe/8QqoF8p9gArSc6fTqYhyQ=
|
||||
modernc.org/sqlite v1.36.1/go.mod h1:7MPwH7Z6bREicF9ZVUR78P1IKuxfZ8mRIDHD0iD+8TU=
|
||||
modernc.org/sqlite v1.37.0 h1:s1TMe7T3Q3ovQiK2Ouz4Jwh7dw4ZDqbebSDTlSJdfjI=
|
||||
modernc.org/sqlite v1.37.0/go.mod h1:5YiWv+YviqGMuGw4V+PNplcyaJ5v+vQd7TQOgkACoJM=
|
||||
modernc.org/strutil v1.2.1 h1:UneZBkQA+DX2Rp35KcM69cSsNES9ly8mQWD71HKlOA0=
|
||||
modernc.org/strutil v1.2.1/go.mod h1:EHkiggD70koQxjVdSBM3JKM7k6L0FbGE5eymy9i3B9A=
|
||||
modernc.org/token v1.1.0 h1:Xl7Ap9dKaEs5kLoOQeQmPWevfnk/DM5qcLcYlA8ys6Y=
|
||||
|
|
|
@ -23,7 +23,7 @@ limitations under the License.
|
|||
// own policy as a package that calls RegisterPolicy(), and compile it into all
|
||||
// Vitess binaries that you use.
|
||||
//
|
||||
// By default (when no security_policy is specified), everyone is allowed to do
|
||||
// By default (when no security-policy is specified), everyone is allowed to do
|
||||
// anything.
|
||||
//
|
||||
// For convenience, there are two other built-in policies that also do NOT do
|
||||
|
@ -43,6 +43,7 @@ import (
|
|||
"github.com/spf13/pflag"
|
||||
|
||||
"vitess.io/vitess/go/vt/log"
|
||||
"vitess.io/vitess/go/vt/utils"
|
||||
)
|
||||
|
||||
// This is a list of predefined roles. Applications are free
|
||||
|
@ -70,7 +71,7 @@ type Policy interface {
|
|||
}
|
||||
|
||||
func RegisterFlags(fs *pflag.FlagSet) {
|
||||
fs.StringVar(&securityPolicy, "security_policy", securityPolicy, "the name of a registered security policy to use for controlling access to URLs - empty means allow all for anyone (built-in policies: deny-all, read-only)")
|
||||
utils.SetFlagStringVar(fs, &securityPolicy, "security-policy", securityPolicy, "the name of a registered security policy to use for controlling access to URLs - empty means allow all for anyone (built-in policies: deny-all, read-only)")
|
||||
}
|
||||
|
||||
// RegisterPolicy registers a security policy. This function must be called
|
||||
|
@ -94,7 +95,7 @@ func savePolicy() {
|
|||
currentPolicy = policy
|
||||
return
|
||||
}
|
||||
log.Warningf("security_policy %q not found; using fallback policy (deny-all)", securityPolicy)
|
||||
log.Warningf("security-policy %q not found; using fallback policy (deny-all)", securityPolicy)
|
||||
currentPolicy = denyAllPolicy{}
|
||||
}
|
||||
|
||||
|
|
|
@ -106,8 +106,8 @@ func TestRegisterFlags(t *testing.T) {
|
|||
|
||||
RegisterFlags(testFs)
|
||||
|
||||
securityPolicyFlag := testFs.Lookup("security_policy")
|
||||
assert.NotNil(t, securityPolicyFlag, "no security_policy flag is registered")
|
||||
securityPolicyFlag := testFs.Lookup("security-policy")
|
||||
assert.NotNil(t, securityPolicyFlag, "no security-policy flag is registered")
|
||||
|
||||
// Check the default value of the flag
|
||||
want := "test"
|
||||
|
|
|
@ -21,7 +21,7 @@ import (
|
|||
"net/http"
|
||||
)
|
||||
|
||||
var errDenyAll = errors.New("not allowed: deny-all security_policy enforced")
|
||||
var errDenyAll = errors.New("not allowed: deny-all security-policy enforced")
|
||||
|
||||
// denyAllPolicy rejects all access.
|
||||
type denyAllPolicy struct{}
|
||||
|
|
|
@ -21,7 +21,7 @@ import (
|
|||
"net/http"
|
||||
)
|
||||
|
||||
var errReadOnly = errors.New("not allowed: read-only security_policy enforced")
|
||||
var errReadOnly = errors.New("not allowed: read-only security-policy enforced")
|
||||
|
||||
// readOnlyPolicy allows DEBUGGING and MONITORING roles for everyone,
|
||||
// while denying any other roles (e.g. ADMIN) for everyone.
|
||||
|
|
|
@ -0,0 +1,14 @@
|
|||
---
|
||||
title:
|
||||
series:
|
||||
---
|
||||
##
|
||||
|
||||
|
||||
|
||||
### Options
|
||||
|
||||
```
|
||||
-h, --help help for this command
|
||||
```
|
||||
|
|
@ -33,8 +33,8 @@ var Init = &cobra.Command{
|
|||
"The MySQL version and flavor will be auto-detected, with a minimal configuration file applied.",
|
||||
Example: `mysqlctl \
|
||||
--alsologtostderr \
|
||||
--tablet_uid 101 \
|
||||
--mysql_port 12345 \
|
||||
--tablet-uid 101 \
|
||||
--mysql-port 12345 \
|
||||
init`,
|
||||
Args: cobra.NoArgs,
|
||||
RunE: commandInit,
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue