Skip to content

Commit

Permalink
Merge tag 'v16.0.6' of https://github.com/Shopify/vitess into update-…
Browse files Browse the repository at this point in the history
…16-2
  • Loading branch information
shanth96 committed Dec 11, 2023
2 parents ab9da01 + a7f80a8 commit afbc052
Show file tree
Hide file tree
Showing 1,568 changed files with 102,960 additions and 82,014 deletions.
20 changes: 13 additions & 7 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -1,13 +1,15 @@
* @deepthi
bootstrap.sh @ajm188 @deepthi @frouioui @vmg
go.mod @ajm188 @deepthi @harshit-gangal @mattlord @rohit-nayak-ps @systay @frouioui
go.sum @ajm188 @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
/.github/workflows/ @deepthi @frouioui @mattlord @rohit-nayak-ps
/config/mycnf/ @deepthi @shlomi-noach @mattlord
/doc/ @deepthi @frouioui @GuptaManan100 @rsajwani
/docker/ @deepthi @derekperkins @dkhenry @mattlord @GuptaManan100 @frouioui
/examples/compose @shlomi-noach @GuptaManan100 @frouioui
/examples/demo @mattlord @rohit-nayak-ps
/examples/legacy_local @deepthi
/examples/local @rohit-nayak-ps @frouioui @mattlord @GuptaManan100
/examples/operator @GuptaManan100 @frouioui @mattlord
/examples/region_sharding @deepthi @mattlord
Expand All @@ -28,16 +30,17 @@ bootstrap.sh @ajm188 @deepthi @frouioui @vmg
/go/tools/ @frouioui @systay
/go/vt/dbconnpool @harshit-gangal @mattlord
/go/vt/discovery @deepthi @frouioui
/go/vt/discovery/*tablet_picker* @rohit-nayak-ps @mattlord
/go/vt/mysqlctl @deepthi @mattlord @rsajwani
/go/vt/proto @deepthi @harshit-gangal @mattlord
/go/vt/proto/vtadmin @ajm188 @notfelineit
/go/vt/schema @mattlord @shlomi-noach
/go/vt/servenv @deepthi @ajm188
/go/vt/sqlparser @harshit-gangal @systay @GuptaManan100
/go/vt/srvtopo @deepthi @rafael @mattlord
/go/vt/srvtopo @deepthi @mattlord
/go/vt/sysvars @harshit-gangal @systay
/go/vt/topo @deepthi @rafael @mattlord @rsajwani
/go/vt/topotools @deepthi @rafael @mattlord @rsajwani
/go/vt/topo @deepthi @mattlord @rsajwani
/go/vt/topotools @deepthi @mattlord @rsajwani
/go/vt/vitessdriver @harshit-gangal
/go/vt/vtadmin @ajm188 @notfelineit @rohit-nayak-ps
/go/vt/vtctl @ajm188 @deepthi @rohit-nayak-ps
Expand All @@ -50,6 +53,9 @@ bootstrap.sh @ajm188 @deepthi @frouioui @vmg
/go/vt/vterrors @harshit-gangal @systay
/go/vt/vtexplain @systay @harshit-gangal
/go/vt/vtgate @harshit-gangal @systay @frouioui @GuptaManan100
/go/vt/vtgate/endtoend/*vstream* @rohit-nayak-ps @mattlord
/go/vt/vtgate/planbuilder @harshit-gangal @systay @frouioui @GuptaManan100 @arthurschreiber
/go/vt/vtgate/*vstream* @rohit-nayak-ps @mattlord
/go/vt/vtorc @deepthi @shlomi-noach @GuptaManan100 @rsajwani
/go/vt/vttablet/*conn* @harshit-gangal @systay
/go/vt/vttablet/endtoend @harshit-gangal @mattlord @rohit-nayak-ps @systay
Expand All @@ -69,7 +75,7 @@ bootstrap.sh @ajm188 @deepthi @frouioui @vmg
/proto/vtadmin.proto @ajm188 @notfelineit
/proto/vtctldata.proto @ajm188 @notfelineit
/proto/vtctlservice.proto @ajm188 @notfelineit
/test/ @GuptaManan100 @frouioui @rohit-nayak-ps
/test/ @GuptaManan100 @frouioui @rohit-nayak-ps @deepthi @mattlord @harshit-gangal
/tools/ @frouioui @rohit-nayak-ps
/web/vtadmin @ajm188 @notfelineit
/web/vtctld2 @notfelineit @rohit-nayak-ps
/web/vtadmin/src/proto @deepthi @harshit-gangal @mattlord
30 changes: 30 additions & 0 deletions .github/workflows/assign_milestone.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,30 @@
name: Assign Milestone

on:
pull_request_target:
types: [opened]

permissions: read-all

env:
GH_TOKEN: ${{ github.token }}

jobs:
build:
name: Assign Milestone
runs-on: ubuntu-22.04
permissions:
pull-requests: write

steps:
- name: Set up Go
uses: actions/setup-go@v3
with:
go-version: 1.20.11

- name: Checkout code
uses: actions/checkout@v3

- name: Assign Milestone
run: |
gh pr edit ${{ github.event.number }} --milestone "v$(sed -n 's/.*versionName.*\"\([[:digit:]\.]*\).*\"/\1/p' ./go/vt/servenv/version.go)"
23 changes: 23 additions & 0 deletions .github/workflows/auto_approve_pr.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,23 @@
name: Auto Approval of Bot Pull Requests
on:
pull_request:
types: [opened, reopened]

jobs:
auto_approve:
name: Auto Approve Pull Request
runs-on: ubuntu-latest
steps:
- name: Checkout code
uses: actions/checkout@v3

- name: Auto Approve Pull Request
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: |
# here we are checking that the PR has been created by the vitess-bot[bot] account and that it is not a draft
# if there is a merge conflict in the backport, the PR will always be created as a draft, meaning we can rely
# on checking whether or not the PR is a draft
if [[ "${{github.event.pull_request.user.login}}" == "vitess-bot[bot]" ]] && [[ "${{github.event.pull_request.draft}}" == "false" ]]; then
gh pr review ${{ github.event.pull_request.number }} --approve
fi
Original file line number Diff line number Diff line change
Expand Up @@ -11,13 +11,13 @@ jobs:
check_pull_request_labels:
name: Check Pull Request labels
timeout-minutes: 10
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
if: github.repository == 'vitessio/vitess'
steps:
- name: Release Notes label
run: |
if [[ "${{contains( github.event.pull_request.labels.*.name, 'release notes (needs details)')}}" == "true" ]]; then
echo The "release notes (needs details)" label is set. The changes made in this Pull Request need to be documented in the release notes summary "('./changelog/15.0/15.0.3/summary.md')". Once documented, the "release notes (needs details)" label can be removed.
echo The "release notes (needs details)" label is set. The changes made in this Pull Request need to be documented in the release notes summary "('./changelog/16.0/16.0.1/summary.md')". Once documented, the "release notes (needs details)" label can be removed.
exit 1
fi
Expand Down
14 changes: 10 additions & 4 deletions .github/workflows/check_make_vtadmin_authz_testgen.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,15 @@ jobs:

build:
name: Check Make vtadmin_authz_testgen
runs-on: ubuntu-latest
runs-on: ubuntu-22.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: |
Expand Down Expand Up @@ -41,13 +48,12 @@ jobs:
uses: actions/setup-go@v3
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
with:
go-version: 1.18.9
go-version: 1.20.11

- name: Tune the OS
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
run: |
echo '1024 65535' | sudo tee -a /proc/sys/net/ipv4/ip_local_port_range
sudo sysctl -w net.ipv4.ip_local_port_range="22768 65535"
- name: Get dependencies
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.vtadmin_changes == 'true'
Expand Down
15 changes: 11 additions & 4 deletions .github/workflows/check_make_vtadmin_web_proto.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,15 @@ jobs:

build:
name: Check Make VTAdmin Web Proto
runs-on: ubuntu-latest
runs-on: ubuntu-22.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: |
Expand Down Expand Up @@ -43,14 +50,14 @@ jobs:
uses: actions/setup-go@v3
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.proto_changes == 'true'
with:
go-version: 1.18.9
go-version: 1.20.11

- name: Setup Node
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.proto_changes == 'true'
uses: actions/setup-node@v2
uses: actions/setup-node@v3
with:
# node-version should match package.json
node-version: '16.13.0'
node-version: '16.19.0'

- name: Install npm dependencies
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.proto_changes == 'true'
Expand Down
2 changes: 1 addition & 1 deletion .github/workflows/close_stale_pull_requests.yml
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ permissions:

jobs:
close_stale_pull_requests:
runs-on: ubuntu-latest
runs-on: ubuntu-22.04
steps:
- uses: actions/stale@v5
with:
Expand Down
33 changes: 27 additions & 6 deletions .github/workflows/cluster_endtoend_12.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,16 @@ concurrency:
jobs:
build:
name: Run endtoend tests on Cluster (12)
runs-on: ubuntu-20.04
runs-on: ubuntu-22.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: |
Expand Down Expand Up @@ -50,7 +57,7 @@ jobs:
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
uses: actions/setup-go@v3
with:
go-version: 1.18.9
go-version: 1.20.11

- name: Set up python
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
Expand All @@ -59,24 +66,26 @@ jobs:
- name: Tune the OS
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
run: |
echo '1024 65535' | sudo tee -a /proc/sys/net/ipv4/ip_local_port_range
# 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'
run: |
# Get key to latest MySQL repo
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
# Setup MySQL 8.0
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.20-1_all.deb
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.24-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 update
# Install everything else we need, and configure
sudo apt-get install -y mysql-server mysql-client make unzip g++ etcd curl git wget eatmydata xz-utils
sudo apt-get install -y mysql-server mysql-client make unzip g++ etcd curl git wget eatmydata xz-utils libncurses5
sudo service mysql stop
sudo service etcd stop
Expand All @@ -87,6 +96,18 @@ jobs:
# install JUnit report formatter
go install github.com/vitessio/go-junit-report@HEAD
- name: Setup launchable dependencies
if: 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" --source .
- name: Run cluster endtoend test
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
timeout-minutes: 45
Expand Down
33 changes: 27 additions & 6 deletions .github/workflows/cluster_endtoend_13.yml
Original file line number Diff line number Diff line change
Expand Up @@ -9,9 +9,16 @@ concurrency:
jobs:
build:
name: Run endtoend tests on Cluster (13)
runs-on: ubuntu-20.04
runs-on: ubuntu-22.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: |
Expand Down Expand Up @@ -50,7 +57,7 @@ jobs:
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
uses: actions/setup-go@v3
with:
go-version: 1.18.9
go-version: 1.20.11

- name: Set up python
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
Expand All @@ -59,24 +66,26 @@ jobs:
- name: Tune the OS
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
run: |
echo '1024 65535' | sudo tee -a /proc/sys/net/ipv4/ip_local_port_range
# 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'
run: |
# Get key to latest MySQL repo
sudo apt-key adv --keyserver keyserver.ubuntu.com --recv-keys 467B942D3A79BD29
# Setup MySQL 8.0
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.20-1_all.deb
wget -c https://dev.mysql.com/get/mysql-apt-config_0.8.24-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 update
# Install everything else we need, and configure
sudo apt-get install -y mysql-server mysql-client make unzip g++ etcd curl git wget eatmydata xz-utils
sudo apt-get install -y mysql-server mysql-client make unzip g++ etcd curl git wget eatmydata xz-utils libncurses5
sudo service mysql stop
sudo service etcd stop
Expand All @@ -87,6 +96,18 @@ jobs:
# install JUnit report formatter
go install github.com/vitessio/go-junit-report@HEAD
- name: Setup launchable dependencies
if: 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" --source .
- name: Run cluster endtoend test
if: steps.skip-workflow.outputs.skip-workflow == 'false' && steps.changes.outputs.end_to_end == 'true'
timeout-minutes: 45
Expand Down
Loading

0 comments on commit afbc052

Please sign in to comment.