Merged
Conversation
iMichka
approved these changes
Aug 6, 2024
Contributor
|
🤖 An automated task has requested bottles to be published to this PR. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Created by
brew bumpCreated with
brew bump-formula-pr.Details
release notes
Small bug fixes for binlog replication while testing with the
python-mysql-replicationlibrary:DEBUGlogging to be less verbosenilcheck forgtidPositionfixes:
thenandelsebranches of conditional in typeinfo_test.go dolthub/dolt#8203Ran into issues when I ran:
go.modis outdatedOnce replication has been started with
START REPLICA;, replication now automatically restarts when the server is restarted. If replication is stopped withSTOP REPLICA;, it is not restarted automatically on server restart. This matches MySQL's behavior.This PR also includes a few other small improvements to binlog replication:
DEBUGtoTRACElevelGetRunningServer()global functionResolves Support restarting replication on server restart dolthub/dolt#8168
Fixes a dropped error return in the clone implementation.
A MySQL primary server may send table names in
TableMapbinlog events that do not match the case of the table name. We use a case-insensitive table name lookup when getting the table's schema, but not when creating theTableWriterthat applies row updates/inserts/deletes. This change fixes that so that mixed case table names can replicate correctly.Bumps fast-xml-parser to 4.4.1 and updates ancestor dependency @aws-sdk/client-ses. These dependencies need to be updated together.
Updates
fast-xml-parserfrom 4.2.5 to 4.4.1Changelog
Sourced from fast-xml-parser's changelog.
... (truncated)
Commits
d40e29cupdate package detail and browser bundlesd0bfe8afix maxlength for currency value2c14fcfUpdate bug-report-or-unexpected-output.mdacf610ffix #634: build attributes with oneListGroup and attributesGroupName (#653)931e910fix: get oneListGroup to work as expected for array of strings (#662)b8e40c8Update ISSUE_TEMPLATE.mda6265bachore: add trend image (#658)db1c548redesign README.md338a2c6Rename 1.Getting Started.md to 1.GettingStarted.mdc762537Rename v5 docs filenames (#659)Updates `@aws-sdk/client-ses` from 3.554.0 to 3.621.0
Release notes
Sourced from
@aws-sdk/client-ses's releases.... (truncated)
Changelog
Sourced from
@aws-sdk/client-ses's changelog.... (truncated)
Commits
d8f767aPublish v3.621.08dd7fb6chore(codegen): bump smithy package versions (#6329)c3dd511Publish v3.620.10220bd0Publish v3.620.0ff30a3echore(clients): codegen sync for eventstream header fix (#6310)fef3c33Publish v3.616.02687058chore(codegen): codegen sync for stream utils (#6279)794a37ePublish v3.614.0fa3b603chore(clients): read config files from paths relative to homedir (#6265)630d429Publish v3.613.0Dependabot will resolve any conflicts with this PR as long as you don't alter it yourself. You can also trigger a rebase manually by commenting `@dependabot rebase`. [//]: # (dependabot-automerge-start) [//]: # (dependabot-automerge-end) ---
Dependabot commands and options
You can trigger Dependabot actions by commenting on this PR: - `@dependabot rebase` will rebase this PR - `@dependabot recreate` will recreate this PR, overwriting any edits that have been made to it - `@dependabot merge` will merge this PR after your CI passes on it - `@dependabot squash and merge` will squash and merge this PR after your CI passes on it - `@dependabot cancel merge` will cancel a previously requested merge and block automerging - `@dependabot reopen` will reopen this PR if it is closed - `@dependabot close` will close this PR and stop Dependabot recreating it. You can achieve the same result by closing it manually - `@dependabot show ignore conditions` will show all of the ignore conditions of the specified dependency - `@dependabot ignore this major version` will close this PR and stop Dependabot creating any more for this major version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this minor version` will close this PR and stop Dependabot creating any more for this minor version (unless you reopen the PR or upgrade to it yourself) - `@dependabot ignore this dependency` will close this PR and stop Dependabot creating any more for this dependency (unless you reopen the PR or upgrade to it yourself) You can disable automated security fix PRs for this repo from the [Security Alerts page](https://github.com/dolthub/dolt/network/alerts).
command:
dolt log --graphSteps for Drawing the Commit Graph
expandGraphfunction.computeColumnEndsfunction:Place a
*at each commit's calculated position to mark it.Connect commits using vertical (
|) and diagonal (\or/) lines to represent branches and merges.An example of the graph of us-jails:
go-mysql-server
The logic setting the InsertID in OkResult, did not match results returned from
last_insert_id().This was made apparent due to changes from update
LAST_INSERT_IDwhen auto incrementing fromempty,NULL, andDEFAULTdolthub/go-mysql-server#2614.For a single insert statement, MySQL sets InsertID exactly once when the AutoIncrement on the column is first triggered.
While the linked PR fixes that issue and properly sets the session variable, our
insertRowHandler(which is responsible for returning OkResult structs) was setting InsertID incorrectly.The fix is to just read the LastInsertID from the session, since it is already set to the right value.
System variables can be session, global, or both.
sql.IncrementStatusVariableis a helper method that primarily helps the "both" category increment the global and session counters for certain variables.Threads_runningis a global only variable that is incremented/decremented every begin/end query, and gets a lot of traffic. The old code usedsql.IncrementStatusVariableto incrementThreads_running, which was a particularly expensive way to increment a global var because (1) we'd make a new error for every call to the session updater, and (2) the extra map lookup is unnecessary. We don't do the extra map lookup now, and we weren't using the error return so I removed the return variable.Note: this also refactors status variables to be explicitly initializated in the engine
bump/perf here: [no-release-notes] status update bump dolthub/dolt#8189
LAST_INSERT_IDwhen auto incrementing fromempty,NULL, andDEFAULTOur logic for determining whether or not we needed to update last insert id only looked at the insertSource schema.
This does not take into consideration
empty,NULLorDEFAULTvalues.Additionally, the value that last insert id is set to depends on what the auto increment value will be.
This PR addresses those issues.
Also, has some refactoring for readability.
fixes: Dolt doesn't update
last_insert_id()whenDEFAULTis used dolthub/dolt#7565Edit most of the analyzer interfaces to pass a new context object that accumulates query specific properties. Currently the object is called
QueryFlags, and accumulates information about the query to inform better rule filtering and more efficient spooling strategies.The change that has the biggest effect on
oltp_point_selectperf is thesql.QFlagMax1Rowsetting, which lets us skip the default results iter boilerplate when we're only returning one row. Added a couple other skips for rules that are easy to whitelist correctly and show prominently on CPU profiles, like aggregations and subqueries.DateAdd()andDateSub()functionsThe output of
DateAdd(),AddDate(),DateSub(), andSubDate(), changes if the input is a properly formatted string vs a date/datetime/time/timestamp.fixes: Date functions should omit
00:00:00time component when dealing with string arguments dolthub/dolt#7304We previously added support for integrators choosing their own indexes with an
sql.IndexSearchableinterface. This was for a customer use case. This PR expands the interface to let Dolt cache information about strict key lookups.The motivation is that (1) strict key lookups will always be the best-case scenario result of index costing, (2) caching this information in-between ALTER statements is usually a long enough lifecycle for the overhead to be worth it.
I added a streamlined range builder as part of this optimization that only accepts literal values in the order expected by the target lookup. The user of this range builder takes responsibility for feeding the values in the correct order. As a result, we sidestep expensive string formatting, map creating, and map lookups during range building.
Follow-on fixes to functional dependencies permuted plans a bit more. Inner joins are chosen more frequently in some of our test plans now that we're reflecting strict key max-1-row cardinalities.
Closed Issues
thenandelsebranches of conditional in typeinfo_test.golast_insert_id()whenDEFAULTis used/causes the dolt shell to incorrectly interpret lines as slash commands.00:00:00time component when dealing with string arguments