Commit Graph

23 Commits

Author SHA1 Message Date
Nikhil Benesch
4af6fcd911 Permit configuring the notice callback
Right now the behavior is hardcoded to log any received notices at the
info level. Add a `notice_callback` configuration option that permits
installing an arbitrary callback to handle any received notices.

As discussed in #588.
2020-09-21 20:04:35 -04:00
Steven Fackler
bc682b3103 Explicitly terminate the connection in sync API
Closes #613
2020-07-27 21:42:02 -04:00
Steven Fackler
a4a68d543d Ensure transactions roll back immediately on drop
Closes #635
2020-07-19 13:24:46 -06:00
Nathan VanBenschoten
64d6e97eff Re-add savepoint method to Transaction
Revives #184.

The rewrite for async/await and Tokio accidentally lost functionality
that allowed users to assign specific names to savepoints when using
nested transactions. This functionality had originally been added
in #184 and had been updated in #374.

This commit revives this functionality using a similar scheme to the
one that existed before. This should allow CockroachDB users to update
to the next patch release of version `0.17`.
2020-05-01 12:55:48 -04:00
Steven Fackler
3c4a0af6ff Add a notification API to the blocking client
This mirrors the implementation in the old 0.15 release, but is quite a
bit simpler now that we're built on the nonblocking API!
2020-03-22 15:22:07 -07:00
Nikhil Benesch
33dbbcbee7
Support cancellation in synchronous client 2019-12-29 14:08:17 -05:00
Steven Fackler
a254e6e9e9 Blocking binary copy support 2019-12-15 17:01:53 -08:00
Steven Fackler
5c33bf8b30 Don't take parameters in copy_in and copy_out
Postgres doesn't support them, so we may as well not provide the option!

Closes #523
2019-12-04 18:51:59 -08:00
Steven Fackler
e5e03b0064 Change the copy_in interface
Rather than taking in a Stream and advancing it internally, return a
Sink that can be advanced by the calling code. This significantly
simplifies encoding logic for things like tokio-postgres-binary-copy.

Similarly, the blocking interface returns a Writer.

Closes #489
2019-11-30 11:04:59 -05:00
Steven Fackler
12c2ef79b6 Upgrade to tokio 0.2/futures 0.3 2019-11-26 16:32:36 -08:00
Steven Fackler
f07ebc7373 Support nested transactions 2019-08-03 18:25:28 -07:00
Steven Fackler
f5a8b1de68 Update postgres 2019-08-03 18:09:27 -07:00
Steven Fackler
2a80118e87 Don't require use of iterators
The common case is to simply want a vec of rows to work with, so make
that the main API, wrapping the old version returning an iterator.
2019-03-10 17:27:28 -07:00
Steven Fackler
32e09dbb91 Change batch_execute into simple_query
Closes #413
2019-01-31 20:35:17 -08:00
Steven Fackler
e57a2976e9 Fix clippy 2019-01-29 19:40:49 -08:00
Steven Fackler
df84dd8fd0 Add convenience to_vec methods to fallible iterators
The very common case is to simply collect these to a vector, and this
lets people avoid having to import FallibleIterator.
2019-01-29 19:29:33 -08:00
Steven Fackler
5169820d6a Return iterators from query in sync API 2018-12-28 20:39:32 -08:00
Steven Fackler
919fa52a5e Add bind and query_portal to sync API 2018-12-28 16:05:05 -05:00
Steven Fackler
ec680b1e0e Avoid NLL letting CopyOutReader borrow drop early 2018-12-23 13:28:13 -08:00
Steven Fackler
793c5f1b87 Add sync copy_out 2018-12-23 13:17:50 -08:00
Steven Fackler
7eaac1cb1a Sync copy_in support 2018-12-22 21:42:03 -08:00
Steven Fackler
0d3e18b251 Support nested transactions in sync API 2018-12-22 13:38:35 -08:00
Steven Fackler
633e87aefc Add basic sync API tests 2018-12-21 21:01:49 -08:00