Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Force index in unique key range queries #1237

Conversation

timvaillancourt
Copy link
Collaborator

@timvaillancourt timvaillancourt commented Dec 28, 2022

Description

This PR forces the unique-key index to be used when gathering the min/max range of the unique key

This is to avoid possibilities of the optimizer picking a different index than we planned, discussed in more detail here. cc @morgo / @cyrinux

In case this PR introduced Go code changes:

  • contributed code is using same conventions as original code
  • script/cibuild returns with no formatting errors, build errors or unit test errors.

@timvaillancourt timvaillancourt marked this pull request as ready for review December 28, 2022 23:10
@morgo
Copy link
Contributor

morgo commented Dec 29, 2022

LGTM

@cyrinux
Copy link

cyrinux commented Dec 29, 2022

LGTM too 👍🏻

@timvaillancourt timvaillancourt added this to the v1.1.7 milestone Dec 7, 2023
@meiji163
Copy link
Contributor

meiji163 commented Dec 7, 2023

LGTM 🚀

@timvaillancourt timvaillancourt merged commit b22229f into github:master Dec 7, 2023
7 checks passed
@timvaillancourt timvaillancourt deleted the readMigrationMinMaxValues-force-index branch December 7, 2023 23:37
RainbowDashy pushed a commit to bytebase/gh-ost that referenced this pull request Jan 2, 2024
* WIP

* Pass entire sql.UniqueKey

* newline for limit

* Rename var

---------

Co-authored-by: meiji163 <[email protected]>
d-bytebase pushed a commit to bytebase/gh-ost that referenced this pull request Jan 2, 2024
* Add `focal` build

* upgrade codeQL action to v2

* Pin docker image to stretch (github#1324)

* pin stretch image

* update stretch repo

* Update Dockerfile.test

* parse binlog timestamp in UTC (github#1322)

* upgrade standard library deps (github#1332)

* fix: typo (github#1331)

Co-authored-by: Tim Vaillancourt <[email protected]>

* Remove stale RELEASE_VERSION file (github#1349)

Signed-off-by: Tim Vaillancourt <[email protected]>

* Force index in unique key range queries (github#1237)

* WIP

* Pass entire sql.UniqueKey

* newline for limit

* Rename var

---------

Co-authored-by: meiji163 <[email protected]>

* Include git commit in version (github#1347)

* Include git commit in version

Signed-off-by: Tim Vaillancourt <[email protected]>

* Make --version output change less-breaking

---------

Signed-off-by: Tim Vaillancourt <[email protected]>

* Fix tokens in inspector logging (github#1226)

* Cleanup whitespace and comments in SQL query text (github#1246)

* Cleanup whitespace in SQL query text

* cleanup

* Add indent

* Update unit tests

* Update unit tests, pt 2

* Fix tweaks

* Fix merge conflict resolution

Signed-off-by: Tim Vaillancourt <[email protected]>

---------

Signed-off-by: Tim Vaillancourt <[email protected]>

* Fix `--version` output (github#1352)

* Fix `--version` output

Signed-off-by: Tim Vaillancourt <[email protected]>

* Always fallback version/commit if undef

Signed-off-by: Tim Vaillancourt <[email protected]>

---------

Signed-off-by: Tim Vaillancourt <[email protected]>

* Update to `go1.21` (github#1351)

* go1.21 + bullseye

Signed-off-by: Tim Vaillancourt <[email protected]>

* go1.21 + bullseye pt 2

Signed-off-by: Tim Vaillancourt <[email protected]>

* checkout before setup-go

Signed-off-by: Tim Vaillancourt <[email protected]>

* go fmt

Signed-off-by: Tim Vaillancourt <[email protected]>

* Use golangci-lint 1.54.2 to support go1.21

Signed-off-by: Tim Vaillancourt <[email protected]>

* stop using io/ioutil to make linter happy

Signed-off-by: Tim Vaillancourt <[email protected]>

* Fix typo

Signed-off-by: Tim Vaillancourt <[email protected]>

* Lint

Signed-off-by: Tim Vaillancourt <[email protected]>

* revert replica-tests CI to ubuntu 20 due to linker errors

Signed-off-by: Tim Vaillancourt <[email protected]>

* Update ensure-go-installed

* use `ubuntu-latest` for `ci` job

Signed-off-by: Tim Vaillancourt <[email protected]>

* stretch -> bullseye

Signed-off-by: Tim Vaillancourt <[email protected]>

---------

Signed-off-by: Tim Vaillancourt <[email protected]>
Signed-off-by: Tim Vaillancourt <[email protected]>

* Replace deprecated `github.com/satori/go.uuid` lib (github#1354)

Signed-off-by: Tim Vaillancourt <[email protected]>

* Add `CODEOWNERS` file to auto-request reviews (github#1350)

Signed-off-by: Tim Vaillancourt <[email protected]>

* go mod tidy

* update test

* fix lint

---------

Signed-off-by: Tim Vaillancourt <[email protected]>
Signed-off-by: Tim Vaillancourt <[email protected]>
Co-authored-by: Rashiq <[email protected]>
Co-authored-by: meiji163 <[email protected]>
Co-authored-by: guangwu <[email protected]>
Co-authored-by: Tim Vaillancourt <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants