diff --git a/.github/workflows/cluster_endtoend_onlineddl_vrepl.yml b/.github/workflows/cluster_endtoend_onlineddl_vrepl.yml index e369098d310..d6114021021 100644 --- a/.github/workflows/cluster_endtoend_onlineddl_vrepl.yml +++ b/.github/workflows/cluster_endtoend_onlineddl_vrepl.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress.yml b/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress.yml index 05be04e624a..cacc92bd0da 100644 --- a/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress.yml +++ b/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress_suite.yml b/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress_suite.yml index ed0aaeed3ae..46929df38d8 100644 --- a/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress_suite.yml +++ b/.github/workflows/cluster_endtoend_onlineddl_vrepl_stress_suite.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/cluster_endtoend_onlineddl_vrepl_suite.yml b/.github/workflows/cluster_endtoend_onlineddl_vrepl_suite.yml index dc240902c34..2fb10c7792e 100644 --- a/.github/workflows/cluster_endtoend_onlineddl_vrepl_suite.yml +++ b/.github/workflows/cluster_endtoend_onlineddl_vrepl_suite.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/cluster_endtoend_vreplication_basic.yml b/.github/workflows/cluster_endtoend_vreplication_basic.yml index 82b55183549..9298c420023 100644 --- a/.github/workflows/cluster_endtoend_vreplication_basic.yml +++ b/.github/workflows/cluster_endtoend_vreplication_basic.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/cluster_endtoend_vreplication_migrate_vdiff2_convert_tz.yml b/.github/workflows/cluster_endtoend_vreplication_migrate_vdiff2_convert_tz.yml index 38d280225e5..559a585814e 100644 --- a/.github/workflows/cluster_endtoend_vreplication_migrate_vdiff2_convert_tz.yml +++ b/.github/workflows/cluster_endtoend_vreplication_migrate_vdiff2_convert_tz.yml @@ -17,7 +17,7 @@ jobs: build: timeout-minutes: 60 name: Run endtoend tests on Cluster (vreplication_migrate_vdiff2_convert_tz) - runs-on: gh-hosted-runners-16cores-1-24.04 + runs-on: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/codecov.yml b/.github/workflows/codecov.yml index 8276dd9381a..9ba2453f6d6 100644 --- a/.github/workflows/codecov.yml +++ b/.github/workflows/codecov.yml @@ -9,7 +9,7 @@ permissions: read-all jobs: test: name: Code Coverage - runs-on: gh-hosted-runners-16cores-1-24.04 + runs-on: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Check out code diff --git a/.github/workflows/docker_build_images.yml b/.github/workflows/docker_build_images.yml index fea9f83b5d3..d77ca49ecfd 100644 --- a/.github/workflows/docker_build_images.yml +++ b/.github/workflows/docker_build_images.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} 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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} if: github.repository == 'vitessio/vitess' && needs.build_and_push_lite.result == 'success' needs: - build_and_push_lite diff --git a/.github/workflows/local_example.yml b/.github/workflows/local_example.yml index ef3569bfb86..36fb648a605 100644 --- a/.github/workflows/local_example.yml +++ b/.github/workflows/local_example.yml @@ -5,7 +5,7 @@ jobs: build: name: Local example using ${{ matrix.topo }} on Ubuntu - runs-on: gh-hosted-runners-16cores-1-24.04 + runs-on: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} strategy: matrix: topo: [consul,etcd,zk2] diff --git a/.github/workflows/region_example.yml b/.github/workflows/region_example.yml index ed190884446..c5d966daf9b 100644 --- a/.github/workflows/region_example.yml +++ b/.github/workflows/region_example.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} strategy: matrix: topo: [etcd] diff --git a/.github/workflows/unit_race.yml b/.github/workflows/unit_race.yml index 77f47a6c083..c3884995dea 100644 --- a/.github/workflows/unit_race.yml +++ b/.github/workflows/unit_race.yml @@ -15,7 +15,7 @@ jobs: build: name: Unit Test (Race) - runs-on: gh-hosted-runners-16cores-1-24.04 + runs-on: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI run: | diff --git a/.github/workflows/unit_race_evalengine.yml b/.github/workflows/unit_race_evalengine.yml index 9654209f2a9..818fb1a31be 100644 --- a/.github/workflows/unit_race_evalengine.yml +++ b/.github/workflows/unit_race_evalengine.yml @@ -15,7 +15,7 @@ jobs: build: name: Unit Test (Evalengine_Race) - runs-on: gh-hosted-runners-16cores-1-24.04 + runs-on: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI run: | diff --git a/.github/workflows/upgrade_downgrade_test_backups_e2e.yml b/.github/workflows/upgrade_downgrade_test_backups_e2e.yml index 0aebf93ae0f..056d1803e0c 100644 --- a/.github/workflows/upgrade_downgrade_test_backups_e2e.yml +++ b/.github/workflows/upgrade_downgrade_test_backups_e2e.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_backups_e2e_next_release.yml b/.github/workflows/upgrade_downgrade_test_backups_e2e_next_release.yml index 6586cca7a13..0679f48a67e 100644 --- a/.github/workflows/upgrade_downgrade_test_backups_e2e_next_release.yml +++ b/.github/workflows/upgrade_downgrade_test_backups_e2e_next_release.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_backups_manual.yml b/.github/workflows/upgrade_downgrade_test_backups_manual.yml index 377e8a5d8a6..9749abfb326 100644 --- a/.github/workflows/upgrade_downgrade_test_backups_manual.yml +++ b/.github/workflows/upgrade_downgrade_test_backups_manual.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_backups_manual_next_release.yml b/.github/workflows/upgrade_downgrade_test_backups_manual_next_release.yml index 96715bbe9de..5209f966c05 100644 --- a/.github/workflows/upgrade_downgrade_test_backups_manual_next_release.yml +++ b/.github/workflows/upgrade_downgrade_test_backups_manual_next_release.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_onlineddl_flow.yml b/.github/workflows/upgrade_downgrade_test_onlineddl_flow.yml index 0b9e7db4aed..d96ea53374b 100644 --- a/.github/workflows/upgrade_downgrade_test_onlineddl_flow.yml +++ b/.github/workflows/upgrade_downgrade_test_onlineddl_flow.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_query_serving_queries.yml b/.github/workflows/upgrade_downgrade_test_query_serving_queries.yml index 39bf1eadb4f..161402ef6fe 100644 --- a/.github/workflows/upgrade_downgrade_test_query_serving_queries.yml +++ b/.github/workflows/upgrade_downgrade_test_query_serving_queries.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_query_serving_queries_2.yml b/.github/workflows/upgrade_downgrade_test_query_serving_queries_2.yml index 37e7471fa33..3d5c56d2660 100644 --- a/.github/workflows/upgrade_downgrade_test_query_serving_queries_2.yml +++ b/.github/workflows/upgrade_downgrade_test_query_serving_queries_2.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_query_serving_queries_2_next_release.yml b/.github/workflows/upgrade_downgrade_test_query_serving_queries_2_next_release.yml index 32a00022737..f9d02dcaba1 100644 --- a/.github/workflows/upgrade_downgrade_test_query_serving_queries_2_next_release.yml +++ b/.github/workflows/upgrade_downgrade_test_query_serving_queries_2_next_release.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_query_serving_queries_next_release.yml b/.github/workflows/upgrade_downgrade_test_query_serving_queries_next_release.yml index faea680e0a8..73322c91b80 100644 --- a/.github/workflows/upgrade_downgrade_test_query_serving_queries_next_release.yml +++ b/.github/workflows/upgrade_downgrade_test_query_serving_queries_next_release.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_query_serving_schema.yml b/.github/workflows/upgrade_downgrade_test_query_serving_schema.yml index 6f39a43d050..2520fb3c3b6 100644 --- a/.github/workflows/upgrade_downgrade_test_query_serving_schema.yml +++ b/.github/workflows/upgrade_downgrade_test_query_serving_schema.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_query_serving_schema_next_release.yml b/.github/workflows/upgrade_downgrade_test_query_serving_schema_next_release.yml index 2450547966e..bba8d8ee3b6 100644 --- a/.github/workflows/upgrade_downgrade_test_query_serving_schema_next_release.yml +++ b/.github/workflows/upgrade_downgrade_test_query_serving_schema_next_release.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_reparent_new_vtctl.yml b/.github/workflows/upgrade_downgrade_test_reparent_new_vtctl.yml index d25a772e423..ccba7ae51d3 100644 --- a/.github/workflows/upgrade_downgrade_test_reparent_new_vtctl.yml +++ b/.github/workflows/upgrade_downgrade_test_reparent_new_vtctl.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_reparent_new_vttablet.yml b/.github/workflows/upgrade_downgrade_test_reparent_new_vttablet.yml index 62cb6bf2018..be7b13494e6 100644 --- a/.github/workflows/upgrade_downgrade_test_reparent_new_vttablet.yml +++ b/.github/workflows/upgrade_downgrade_test_reparent_new_vttablet.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_reparent_old_vtctl.yml b/.github/workflows/upgrade_downgrade_test_reparent_old_vtctl.yml index ffa751313b4..995919c4e01 100644 --- a/.github/workflows/upgrade_downgrade_test_reparent_old_vtctl.yml +++ b/.github/workflows/upgrade_downgrade_test_reparent_old_vtctl.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_reparent_old_vttablet.yml b/.github/workflows/upgrade_downgrade_test_reparent_old_vttablet.yml index cf8a0c925aa..caba48f3194 100644 --- a/.github/workflows/upgrade_downgrade_test_reparent_old_vttablet.yml +++ b/.github/workflows/upgrade_downgrade_test_reparent_old_vttablet.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/.github/workflows/upgrade_downgrade_test_semi_sync.yml b/.github/workflows/upgrade_downgrade_test_semi_sync.yml index 4fa60f7f66e..6e6b98869fb 100644 --- a/.github/workflows/upgrade_downgrade_test_semi_sync.yml +++ b/.github/workflows/upgrade_downgrade_test_semi_sync.yml @@ -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: ${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }} steps: - name: Skip CI diff --git a/go/vt/dbconfigs/credentials.go b/go/vt/dbconfigs/credentials.go index 4e0e5518869..f7082738c5e 100644 --- a/go/vt/dbconfigs/credentials.go +++ b/go/vt/dbconfigs/credentials.go @@ -133,6 +133,12 @@ func GetCredentialsServer() CredentialsServer { return cs } +// SetDbCredentialsFilePath sets the value of the `--db-credentials-file` flag. +// This should be used only for testing. +func SetDbCredentialsFilePath(path string) { + dbCredentialsFile = path +} + // FileCredentialsServer is a simple implementation of CredentialsServer using // a json file. Protected by mu. type FileCredentialsServer struct { diff --git a/go/vt/tableacl/tableacl.go b/go/vt/tableacl/tableacl.go index 1b236cb1812..2bb48ca28f2 100644 --- a/go/vt/tableacl/tableacl.go +++ b/go/vt/tableacl/tableacl.go @@ -110,6 +110,10 @@ func (tacl *tableACL) init(configFile string, aclCB func()) error { log.Infof("unable to read tableACL config file: %v Error: %v", configFile, err) return err } + if len(data) == 0 { + return errors.New("tableACL config file is empty") + } + config := &tableaclpb.Config{} if err := config.UnmarshalVT(data); err != nil { // try to parse tableacl as json file diff --git a/go/vt/tableacl/tableacl_test.go b/go/vt/tableacl/tableacl_test.go index 388567b62e2..16e5c5d6163 100644 --- a/go/vt/tableacl/tableacl_test.go +++ b/go/vt/tableacl/tableacl_test.go @@ -23,6 +23,7 @@ import ( "reflect" "testing" + "github.com/stretchr/testify/require" "google.golang.org/protobuf/proto" "vitess.io/vitess/go/vt/tableacl/acl" @@ -74,6 +75,19 @@ func TestInitWithValidConfig(t *testing.T) { } } +func TestInitWithEmptyConfig(t *testing.T) { + tacl := tableACL{factory: &simpleacl.Factory{}} + f, err := os.CreateTemp("", "tableacl") + require.NoError(t, err) + + defer os.Remove(f.Name()) + err = f.Close() + require.NoError(t, err) + + err = tacl.init(f.Name(), func() {}) + require.Error(t, err) +} + func TestInitFromProto(t *testing.T) { tacl := tableACL{factory: &simpleacl.Factory{}} readerACL := tacl.Authorized("my_test_table", READER) diff --git a/go/vt/vtgate/planbuilder/operators/subquery_planning.go b/go/vt/vtgate/planbuilder/operators/subquery_planning.go index 11ff963503d..774427ca2d8 100644 --- a/go/vt/vtgate/planbuilder/operators/subquery_planning.go +++ b/go/vt/vtgate/planbuilder/operators/subquery_planning.go @@ -550,6 +550,9 @@ func tryMergeSubqueryWithOuter(ctx *plancontext.PlanningContext, subQuery *SubQu if !subQuery.IsArgument { op.Source = newFilter(outer.Source, subQuery.Original) } + if outer.Comments != nil { + op.Comments = outer.Comments + } ctx.MergedSubqueries = append(ctx.MergedSubqueries, subQuery.originalSubquery) return op, Rewrote("merged subquery with outer") } diff --git a/go/vt/vtgate/planbuilder/testdata/select_cases.json b/go/vt/vtgate/planbuilder/testdata/select_cases.json index 9091c5d8613..ef6df93441e 100644 --- a/go/vt/vtgate/planbuilder/testdata/select_cases.json +++ b/go/vt/vtgate/planbuilder/testdata/select_cases.json @@ -933,6 +933,73 @@ ] } }, + { + "comment": "Comments with subquery", + "query": "select /* comment */ user.col from user where id IN (select id from user where id > 1 and id < 10)", + "plan": { + "QueryType": "SELECT", + "Original": "select /* comment */ user.col from user where id IN (select id from user where id > 1 and id < 10)", + "Instructions": { + "OperatorType": "Route", + "Variant": "Scatter", + "Keyspace": { + "Name": "user", + "Sharded": true + }, + "FieldQuery": "select `user`.col from `user` where 1 != 1", + "Query": "select /* comment */ `user`.col from `user` where id in (select id from `user` where id > 1 and id < 10)", + "Table": "`user`" + }, + "TablesUsed": [ + "user.user" + ] + } + }, + { + "comment": "Comments with subquery not merged into a single route", + "query": "select /* comment */ user.col from user where foo IN (select id from user where id > 1 and id < 10)", + "plan": { + "QueryType": "SELECT", + "Original": "select /* comment */ user.col from user where foo IN (select id from user where id > 1 and id < 10)", + "Instructions": { + "OperatorType": "UncorrelatedSubquery", + "Variant": "PulloutIn", + "PulloutVars": [ + "__sq_has_values", + "__sq1" + ], + "Inputs": [ + { + "InputName": "SubQuery", + "OperatorType": "Route", + "Variant": "Scatter", + "Keyspace": { + "Name": "user", + "Sharded": true + }, + "FieldQuery": "select id from `user` where 1 != 1", + "Query": "select /* comment */ id from `user` where id > 1 and id < 10", + "Table": "`user`" + }, + { + "InputName": "Outer", + "OperatorType": "Route", + "Variant": "Scatter", + "Keyspace": { + "Name": "user", + "Sharded": true + }, + "FieldQuery": "select `user`.col from `user` where 1 != 1", + "Query": "select /* comment */ `user`.col from `user` where :__sq_has_values and foo in ::__sq1", + "Table": "`user`" + } + ] + }, + "TablesUsed": [ + "user.user" + ] + } + }, { "comment": "for update", "query": "select user.col from user join user_extra for update", diff --git a/go/vt/vttablet/tabletserver/tabletenv/config.go b/go/vt/vttablet/tabletserver/tabletenv/config.go index 158f40d5202..7aa3560da7f 100644 --- a/go/vt/vttablet/tabletserver/tabletenv/config.go +++ b/go/vt/vttablet/tabletserver/tabletenv/config.go @@ -877,7 +877,12 @@ func (c *TabletConfig) verifyUnmanagedTabletConfig() error { return errors.New("database app user not specified") } if c.DB.App.Password == "" { - return errors.New("database app user password not specified") + _, pass, err := dbconfigs.GetCredentialsServer().GetUserAndPassword(c.DB.App.User) + if err == nil && pass != "" { + c.DB.App.Password = pass + } else { + return errors.New("database app user password not specified") + } } // Replication fixes should be disabled for Unmanaged tablets. mysqlctl.DisableActiveReparents = true diff --git a/go/vt/vttablet/tabletserver/tabletenv/config_test.go b/go/vt/vttablet/tabletserver/tabletenv/config_test.go index d16b6276964..29c74caa6dd 100644 --- a/go/vt/vttablet/tabletserver/tabletenv/config_test.go +++ b/go/vt/vttablet/tabletserver/tabletenv/config_test.go @@ -484,4 +484,12 @@ func TestVerifyUnmanagedTabletConfig(t *testing.T) { config.DB.App.Password = "testPassword" err = config.verifyUnmanagedTabletConfig() assert.Nil(t, err) + + dbconfigs.SetDbCredentialsFilePath("./data/db_credentials.json") + defer dbconfigs.SetDbCredentialsFilePath("") + config.DB.App.Password = "" + + err = config.verifyUnmanagedTabletConfig() + assert.Nil(t, err) + assert.Equal(t, "testPassword", config.DB.App.Password) } diff --git a/go/vt/vttablet/tabletserver/tabletenv/data/db_credentials.json b/go/vt/vttablet/tabletserver/tabletenv/data/db_credentials.json new file mode 100644 index 00000000000..a4c2bfecbd7 --- /dev/null +++ b/go/vt/vttablet/tabletserver/tabletenv/data/db_credentials.json @@ -0,0 +1,3 @@ +{ + "testUser": ["testPassword"] +} \ No newline at end of file diff --git a/test/templates/cluster_endtoend_test.tpl b/test/templates/cluster_endtoend_test.tpl index 819f9d8413e..004570a5c8f 100644 --- a/test/templates/cluster_endtoend_test.tpl +++ b/test/templates/cluster_endtoend_test.tpl @@ -15,7 +15,7 @@ jobs: build: timeout-minutes: 60 name: Run endtoend tests on {{.Name}} - runs-on: {{if .Cores16}}gh-hosted-runners-16cores-1-24.04{{else}}ubuntu-24.04{{end}} + runs-on: {{if .Cores16}}{{`${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }}`}}{{else}}ubuntu-24.04{{end}} steps: - name: Skip CI diff --git a/test/templates/cluster_endtoend_test_docker.tpl b/test/templates/cluster_endtoend_test_docker.tpl index 39a36b88c89..fa254660b7f 100644 --- a/test/templates/cluster_endtoend_test_docker.tpl +++ b/test/templates/cluster_endtoend_test_docker.tpl @@ -6,7 +6,7 @@ permissions: read-all jobs: build: name: Run endtoend tests on {{.Name}} - runs-on: {{if .Cores16}}gh-hosted-runners-16cores-1-24.04{{else}}ubuntu-24.04{{end}} + runs-on: {{if .Cores16}}{{`${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }}`}}{{else}}ubuntu-24.04{{end}} steps: - name: Skip CI diff --git a/test/templates/cluster_endtoend_test_mysql57.tpl b/test/templates/cluster_endtoend_test_mysql57.tpl index a6cbc969c1a..b533882141a 100644 --- a/test/templates/cluster_endtoend_test_mysql57.tpl +++ b/test/templates/cluster_endtoend_test_mysql57.tpl @@ -19,7 +19,7 @@ env: jobs: build: name: Run endtoend tests on {{.Name}} - runs-on: {{if .Cores16}}gh-hosted-runners-16cores-1-24.04{{else}}ubuntu-24.04{{end}} + runs-on: {{if .Cores16}}{{`${{ github.repository_owner == 'vitessio' && 'gh-hosted-runners-16cores-1-24.04' || 'ubuntu-24.04' }}`}}{{else}}ubuntu-24.04{{end}} steps: - name: Skip CI