Changed the algorithm that calculates how many connections to create to
correctly take into account the number of pending requests.
This makes the pool resize as expected and avoids potential deadlocks.
close#395
Added a tutorial on UPDATEs, transactions and multi-queries
Added a tutorial on connection_pool
Added a tutorial on error handling
Added examples on INSERTs and DELETEs
Rewrote the discussion page on character sets
Added a discussion page on the templated connection class
Removed superseded examples on timeouts and multi-queries
Updated the coverage build to gcc-14 (gcc-13 was using a non-LTS release
that caused problems)
Contributes to #365 and #366
Added tutorials 2, 3 and 4
Changed most of the discussion to use any_connection
Added examples on disabling TLS, multi-function operations, multi-queries and transactions
All examples now use any_connection
Automate parts of example qbk generation
Partially addresses #365 and #366
This makes asio::as_tuple and asio::redirect_error usable as partial
completion tokens with any_connection and connection_pool.
Fixed a Jamfile issue that caused warnings in dependencies to fail CI builds.
Removed leftover comment in the pipeline example.
any_connection, client-side SQL formatting and connection_pool are now
stable
connection is now marked as legacy (not recommended for new code)
Added legacy/experimental tags in quickref file
close#364
Renamed format_sequence_view to format_sequence
format_sequence members are now part of the public API
Moved sequence to a separate header
Added sequence_range_t
close#359
Immediate completions in connection and any_connection are now correctly
dispatched to the token's immediate executor using asio::async_immediate
instead of plain asio::post.
Added a section on executors in the reference docs of async functions in
connection and any_connection
Disabled TSAN connection_pool_cancel_get_connection for libc++ builds
close#301
Please use asio::cancel_after, instead.
Replaced client_errc::timeout, client_errc::cancelled by
client_errc::no_connection_available, client_errc::pool_cancelled
async_get_connection no longer uses the last connect error code as failure error code,
but embeds this info in the output diagnostics
close#349
Thread-safety is now achieved using pool_params::thread_safe.
Removed pool_executor_params::thread_safe
Unsafe pools now use the standard Asio semantics
Safe pools are now safe even if the handlers' associated executors point
to a context different from the pool's context
close#268