Accept multiple --execute options and run each specified query in turn#1476
Accept multiple --execute options and run each specified query in turn#1476rolandwalker wants to merge 1 commit intomainfrom
--execute options and run each specified query in turn#1476Conversation
and run each specified query in turn. The current behavior is to accept multiple --execute options, but to only execute the last one: a bug. Since there are multiple values, we can also support --throttle, per the discussion in #1460. One inconsistency between STDIN and --execute is that --execute does not support warning on destructive queries. This should probably be resolved in the direction of removing the warning from scripts on STDIN.
|
What is the benefit of multiple executes over running multiple queries within a single execute like you would normally? I.e. vs Unless there is a specific use case that seems unnecessary. My original comment was around the fact that you could technically have the throttle affect the multiple queries passed at once, since we parse the queries one by one anyway. |
|
The benefits are:
|
Unclear why you need multiple -e params to unify the batch modes? RE: the multiple -e bug, I'd lean towards checking for that scenario and erroring vs adding it in as functionality to avoid the bug. The behavior of accepting multiple is the same for all "basic" options, so we'd be selectively changing that in this case. |
|
Findings
Missing tests / edge cases
Questions / clarifications
If you want, I can propose a minimal patch to restore the old |
Description
Accept multiple
--executeoptions and run each specified query in turnThe current behavior is to accept multiple
--executeoptions, but to only execute the last one: a bug.Since there are multiple values, we can also support
--throttle, per the discussion in #1460.One inconsistency between STDIN and
--executeis that--executedoes not support warning on destructive queries. This should probably be resolved in the direction of removing the warning from scripts on STDIN.Checklist
changelog.md.AUTHORSfile (or it's already there).uv run ruff check && uv run ruff format && uv run mypy --install-types .to lint and format the code.