-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Release v1.9.3 #1724
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
Release v1.9.3 #1724
Conversation
* ensuring performance schema is enabled when testing some performance schema results * do not use collations affected by MariaDB character_set_collations. * ensure using IANA timezone in test, since tzinfo depending on system won't have deprecated tz like "US/Central" and "US/Pacific" Co-authored-by: Diego Dupin <[email protected]>
…r#1702) If a transaction connection has a cached error, return it instead of ErrInvalidConn during Commit/Rollback operations. Fix go-sql-driver#1690 Co-authored-by: brad-defined <[email protected]>
Backport benchmark improvements.
Avoid unnecessary allocation. Although this is not a bug, this is a regression in 1.9 branch. This PR fixes performance regression when compression is not used.
Add missing mc.syncSequence() Fix go-sql-driver#1718
Caution Review failedThe pull request is closed. WalkthroughThis change refactors internal buffer and packet handling, error reporting in transaction methods, and benchmark tests for clarity and efficiency. It also updates tests for collation, time zones, and connection attributes, and adds new contributors to the AUTHORS file. Changelog and code comments are updated accordingly. Changes
Sequence Diagram(s)sequenceDiagram
participant App as Application
participant Tx as mysqlTx
participant Conn as mysqlConn
App->>Tx: Commit() or Rollback()
Tx->>Conn: Check if mc is nil
alt mc is nil
Tx-->>App: return ErrInvalidConn
else mc is closed
Tx->>Conn: mc.error()
alt error exists
Tx-->>App: return cached error
else
Tx-->>App: return ErrInvalidConn
end
else
Tx->>Conn: Execute COMMIT or ROLLBACK
Tx-->>App: return result or error
end
sequenceDiagram
participant Conn as mysqlConn
participant Buffer as buffer
Conn->>Buffer: readNext(n)
alt buffer has enough data
Buffer-->>Conn: return slice of n bytes
else
Buffer->>Conn: refill buffer (not in new readNext)
Buffer-->>Conn: (not applicable, now just returns slice)
end
Conn-->>Conn: process packet with received data
Possibly related PRs
📜 Recent review detailsConfiguration used: CodeRabbit UI ⛔ Files ignored due to path filters (1)
📒 Files selected for processing (8)
✨ Finishing Touches
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. 🪧 TipsChatThere are 3 ways to chat with CodeRabbit:
SupportNeed help? Create a ticket on our support page for assistance with any issues or questions. Note: Be mindful of the bot's finite context window. It's strongly recommended to break down tasks such as reading entire modules into smaller chunks. For a focused discussion, use review comments to chat about specific files and their changes, instead of using the PR comments. CodeRabbit Commands (Invoked using PR comments)
Other keywords and placeholders
CodeRabbit Configuration File (
|
Description
Checklist