Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
3 changes: 3 additions & 0 deletions content/en/docs/concepts/query-rewriting.md
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,9 @@ Vitess handles system variables in one of four different ways:
* *Vitess aware*. These are settings that change Vitess' behaviour, and are not sent down to MySQL
* *Reserved connection*. For some settings, it makes sense to allow them to be set, but it also means that we can't use a shared connection for this user. What this means is that every connection done on this users behalf will need to first have these system variables set, and then keep the connection dedicated. Connection pooling is important for the performance of Vitess, and reserved connections can't be pooled, so this should not be the normal way to run applications on Vitess. Just make sure that the global variable is set to the same value the application will set it to, and Vitess can use connection pooling.

In addition to this, Vitess makes sure that @@version includes both the emulated MySQL version and the Vitess version, such as: `5.7.9-vitess-10.0.0-SNAPSHOT`. This value can be changed by using the vtgate flag `-mysql_server_version`.


### Special functions

There are a few special functions that Vitess handles without delegating to MySQL.
Expand Down
10 changes: 9 additions & 1 deletion content/en/docs/reference/compatibility/mysql-compatibility.md
Original file line number Diff line number Diff line change
Expand Up @@ -32,7 +32,15 @@ Vitess supports a subset of subqueries. For example, a subquery combined with a

### Stored Procedures

Vitess does not yet support MySQL Stored Procedures.
Calling stored procedures using `CALL` is supported for unsharded keyspaces, or if you directly target a specific shard. They can return no results.

Only IN parameters are supported.

If you use transactions, the transaction state cannot change between calls - if there is a transaction open at the beginning of the CALL, a transaction must still be open after the procedure has run.

Likewise, if there is no transaction open, the procedure should not leave an open transaction after itself.

`CREATE PROCEDURE` is not supported - you have to create the procedure directly on the underlying MySQL servers and not through Vitess.

### Window Functions and CTEs

Expand Down
2 changes: 1 addition & 1 deletion content/en/docs/troubleshoot/_index.md
Original file line number Diff line number Diff line change
Expand Up @@ -16,5 +16,5 @@ When an alert fires, you have the following sources of information to perform yo

### Find Vitess build running
```
select @@vitess_version;
select @@version;
```