Comments (5)
/cc @vitessio/query-serving on this and the PR: #15455
from vitess.
Just noting that the results are the same on main today:
mysql> vexplain queries select * from test_vindex_signed_int where v_key in (1,100);
+------+----------+-------+-------------------------------------------------------------------+
| # | keyspace | shard | query |
+------+----------+-------+-------------------------------------------------------------------+
| 0 | customer | -80 | select id, v_key from test_vindex_signed_int where v_key in (1) |
| 1 | customer | 80- | select id, v_key from test_vindex_signed_int where v_key in (100) |
+------+----------+-------+-------------------------------------------------------------------+
2 rows in set (0.01 sec)
mysql> vexplain /*vt+ EXECUTE_DML_QUERIES */ queries update test_vindex_signed_int set id = id + 100 where v_key in (1,100);
+------+----------+-------+-------------------------------------------------------------------------+
| # | keyspace | shard | query |
+------+----------+-------+-------------------------------------------------------------------------+
| 0 | customer | 80- | begin |
| 0 | customer | 80- | update test_vindex_signed_int set id = id + 100 where v_key in (1, 100) |
| 1 | customer | -80 | begin |
| 1 | customer | -80 | update test_vindex_signed_int set id = id + 100 where v_key in (1, 100) |
+------+----------+-------+-------------------------------------------------------------------------+
4 rows in set (0.00 sec)
❯ vtgate --version
vtgate version Version: 20.0.0-SNAPSHOT (Git revision 3ae5cf7e690e560dd5630119215bcc3f5ecf31c8 branch 'main') built on Tue Mar 12 12:20:18 EDT 2024 by [email protected] using go1.22.1 darwin/arm64
from vitess.
This is not a correctness issue as it does not make the database inconsistent in any way.
from vitess.
I have removed the Bug
label from it, there can be some performance improvement if the list is very big like 1000 or 10000 and we send only a limited list to each shard.
from vitess.
This is not a correctness issue as it does not make the database inconsistent in any way.
Understood, thank you for your explanation. My description was not accurate; this is indeed not a bug.we can still discuss how to optimize performance to be more efficient when dealing with large volumes of data.
from vitess.
Related Issues (20)
- Bug Report: Changing default of `replica_net_timeout` can cause issues while upgrading HOT 1
- Question: I don't add vttablet into vitess cluster on a new node. HOT 1
- Bug Report: Incorrect column name in a derived query
- Feature Request: Prefer longer running replicas for PRS
- Bug Report: etcd, vtcltd "already running" message on startup HOT 1
- Feature Request: `schemadiff` to calculate "Row size too large" and index size HOT 2
- Joins with derived table and aliases produces bad plan
- Bug Report: Dual left join query returns more results than it should
- Bug Report: cancelling MoveTables errors with 'cannot remove tables since one or more do not exist in the denylist' HOT 11
- Bug Report: Insert on duplicate key update failing with missing bind var
- Feature Request: Add support for getting older key values from the topo server
- RFC: Drain MySQL connection in VTGate upon termination of VTGate HOT 4
- Bug Report: VPlayer does not detect stalls HOT 3
- Feature Request: Add support for multi table update for non literal column update using other dependent table
- FeatureRequest: `LookupVindex create` should use an existing VIndex and Table when possible
- `LookupVindex create` does not properly cleanup / undo state changes made when it fails to create the workflow
- Feature Request: `LookupVindex` has no `internalize` command (equivalent to `ReverseTraffic`)
- Bug Report: VTOrc is not setting the correct timeout for RPC calls which can get stuck
- Feature Request: Move most VARBINARY columns to VARCHAR in examples HOT 7
- Bug Report: `schemadiff` shows bogus diff on textual column where collation is undefined
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from vitess.