-
Notifications
You must be signed in to change notification settings - Fork 21
add start_txn #59
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
add start_txn #59
Conversation
|
I am not so sure about this PR. Although parsing overhead is likely limited, it seems wrong to use a non-prepared query for every transaction, when the rest runs by prepared queries. Is it not better to leave it to the use to create a prepared query for the purpose? There is also a different way of doing this in MariaDB, using (On the other hand, I think exposing the binding for |
What do you mean ? we added this, because you can't prepare START TRANSACTION statement. Or are you talking about some other way to prepare transactions ?
that is what we were using. But it is a bit finicky when you have connections pool and proxy like proxysql. Means that this becomes stateful, and just to be safe, each time you reuse a connection, you have to ensure that autocomit is 1. This is fine, but for us this ended up beging hundred of thousands of queries per second just to set autocommit, while most queries are not inside transactions, which ended up having a high cost in term of cpu usage. |
|
Aha, I recall now there is restriction with prepared queries. In that case, I think this is an acceptable solution given the lack of a full |
CHANGES: - Added `Stmt.start_txn` (ocaml-community/ocaml-mariadb#59 by Corentin Leruth). - Added `Res.insert_id` as binding for `mysql_stmt_insert_id` (ocaml-community/ocaml-mariadb#58 by Corentin Leruth). - Updated to support recent OCaml versions (ocaml-community/ocaml-mariadb#45 by @kit-ty-kate). - Fixed too-early retrieval of statement metadata (ocaml-community/ocaml-mariadb#41 by Albert Peschar). - Fixed decoding bug for the integer type (ocaml-community/ocaml-mariadb#54 by Raman Varabets, tested by ocaml-community/ocaml-mariadb#61 by Corentin Leruth). - Fixed a memory leaks related to result metadata (ocaml-community/ocaml-mariadb#39 by Albert Peschar). - The build system is now dune and dune-configurator (ocaml-community/ocaml-mariadb#52 by Petter A. Urkedal) and some of the examples have been converted to a test suite (ocaml-community/ocaml-mariadb#60 by Petter A. Urkedal). - The project has been transferred to ocaml-community with Petter A. Urkedal as the new maintainer.
CHANGES: - Added `Stmt.start_txn` (ocaml-community/ocaml-mariadb#59 by Corentin Leruth). - Added `Res.insert_id` as binding for `mysql_stmt_insert_id` (ocaml-community/ocaml-mariadb#58 by Corentin Leruth). - Updated to support recent OCaml versions (ocaml-community/ocaml-mariadb#45 by @kit-ty-kate). - Fixed too-early retrieval of statement metadata (ocaml-community/ocaml-mariadb#41 by Albert Peschar). - Fixed decoding bug for the integer type (ocaml-community/ocaml-mariadb#54 by Raman Varabets, tested by ocaml-community/ocaml-mariadb#61 by Corentin Leruth). - Fixed a memory leaks related to result metadata (ocaml-community/ocaml-mariadb#39 by Albert Peschar). - The build system is now dune and dune-configurator (ocaml-community/ocaml-mariadb#52 by Petter A. Urkedal) and some of the examples have been converted to a test suite (ocaml-community/ocaml-mariadb#60 by Petter A. Urkedal). - The project has been transferred to ocaml-community with Petter A. Urkedal as the new maintainer.
CHANGES: - Added `Stmt.start_txn` (ocaml-community/ocaml-mariadb#59 by Corentin Leruth). - Added `Res.insert_id` as binding for `mysql_stmt_insert_id` (ocaml-community/ocaml-mariadb#58 by Corentin Leruth). - Updated to support recent OCaml versions (ocaml-community/ocaml-mariadb#45 by @kit-ty-kate). - Fixed too-early retrieval of statement metadata (ocaml-community/ocaml-mariadb#41 by Albert Peschar). - Fixed decoding bug for the integer type (ocaml-community/ocaml-mariadb#54 by Raman Varabets, tested by ocaml-community/ocaml-mariadb#61 by Corentin Leruth). - Fixed a memory leaks related to result metadata (ocaml-community/ocaml-mariadb#39 by Albert Peschar). - The build system is now dune and dune-configurator (ocaml-community/ocaml-mariadb#52 by Petter A. Urkedal) and some of the examples have been converted to a test suite (ocaml-community/ocaml-mariadb#60 by Petter A. Urkedal). - The project has been transferred to ocaml-community with Petter A. Urkedal as the new maintainer.
add
start_txncc @jorisgio