Philipp Korber
96f97a6117
Fixes #371 by not reusing the same savepoint name.
...
Rolling back to a savepoint doesn't release it so,
reusing the same name in nested transaction means
inner transactions only roll back to the
most transaction/last savepoint.
If the outer most transaction commits but did multiple
consecutive rollbacks in the nested transactions this
did cause an unexpected state in the database before
the fix.
2018-09-25 15:35:20 +02:00
Philipp Korber
a7db658279
Test partial rollback of nested commits.
...
Related to #371 .
2018-09-25 15:21:31 +02:00
Sam Rijs
afce0b7d14
Add Json wrapper type
2018-09-25 21:38:10 +10:00
Steven Fackler
12546ecd95
Merge pull request #370 from Lorfdail/master
...
Handle non unix case in poll_start of PollConnect
2018-08-25 15:42:30 -07:00
Michael Niens
d6fd28d02f
Allow to build on Windows
...
Someone forgot to handle the non unix case for this match which prevented a build on windows.
A similar line already existed here in line 51 to 56.
5ad7850009/tokio-postgres/src/stream.rs
2018-08-26 00:06:42 +02:00
Steven Fackler
4eecb59bf4
Used released tokio-uds
2018-08-19 22:07:01 -07:00
Steven Fackler
9609055edf
Also patch tokio
...
Not sure how tests previously compiled?
2018-08-18 13:06:19 -07:00
Steven Fackler
5bea375b37
Remove the flush step from connect future
...
The socket's not buffered, so there's no need to do this.
2018-08-18 13:02:52 -07:00
Steven Fackler
7de5ac85af
Merge pull request #368 from StoriqaTeam/geo-0.10
...
Support geo 0.10
2018-08-17 10:59:54 -07:00
Artem Vorotnikov
a33edae15b
Upgrade to geo-0.10
2018-08-17 18:18:28 +03:00
Steven Fackler
89f5198261
Add query_portal
2018-08-15 21:00:15 -07:00
Steven Fackler
349f3764a9
Don't bother waiting for a ReadyForQuery
...
We use it in the connection to track framing but don't need to wait
around for it in the individual futures/streams
2018-08-15 20:24:50 -07:00
Steven Fackler
dcde61c16d
Add bind/portal
2018-08-15 19:53:20 -07:00
Steven Fackler
a4bdcb11e4
Overhaul error type
2018-08-15 10:27:34 -07:00
Steven Fackler
a05adff20d
Make DbError's fields private
2018-08-14 16:58:10 -07:00
Steven Fackler
1d9ae82198
Move error in-crate
...
We'll operate under the assumption that postgres will end up being a
wrapper on top of tokio-postgres so postgres-shared goes away.
2018-08-13 13:25:29 -06:00
Steven Fackler
3d22aa323b
Make copy_in stream more flexible
2018-08-12 21:23:21 -06:00
Steven Fackler
bfd2c7f436
Fix assert
2018-08-12 20:49:59 -06:00
Steven Fackler
b74f5c80d0
copy in support
2018-08-12 20:19:27 -06:00
Steven Fackler
daeb5389ed
log typo
2018-08-10 11:35:14 -07:00
Steven Fackler
7056e3ec24
Copy out support
2018-07-15 19:40:15 -07:00
Steven Fackler
9e399aa93f
Basic transaction support
2018-07-14 14:59:37 -07:00
Steven Fackler
bf0633681b
Fix pipelined preparation
...
We can end up double-preparing the typeinfo queries if we're pipelining
preparation, so pick a unique name for them.
2018-07-08 16:06:53 -07:00
Steven Fackler
53657b828a
Implement batch_execute
2018-07-07 22:42:04 -07:00
Steven Fackler
08df4b330f
Implement tls_server_end_point for postgres-native-tls
2018-07-07 21:18:41 -07:00
Steven Fackler
3955d26c20
Don't hold strong references in statements
...
There's no need for the connection to stay open until statements drop -
they'll be cleaned up anyway once the connection dies.
2018-07-07 16:43:07 -07:00
Steven Fackler
1788a03baa
notification/notice support
2018-07-07 10:11:16 -07:00
Steven Fackler
997b5e01a4
Set TCP_NODELAY for tokio-postgres
2018-07-05 21:36:50 -07:00
Steven Fackler
a237a471c9
Support custom types
2018-07-05 20:48:08 -07:00
Steven Fackler
be2ca03fa9
tokio-postgres query cancellation
2018-06-27 22:37:43 -07:00
Steven Fackler
c2fb9c6de0
Move TLS logic to connect future
...
This way we can reuse it for query cancellation
2018-06-26 22:04:15 -07:00
Steven Fackler
6edab70b0e
Channel binding support in tokio-postgres
2018-06-26 21:17:04 -07:00
Steven Fackler
705ef7d5b2
Implement tls-unique for postgres-openssl
...
While it's a bit sketchier than tls-server-end-point, it is supported on
the backend with all OpenSSL versions.
2018-06-26 21:07:47 -07:00
Steven Fackler
369f6e027f
tokio-postgres-openssl
2018-06-26 21:00:26 -07:00
Steven Fackler
5c89b35785
Upgrade native-tls
2018-06-25 21:25:49 -07:00
Steven Fackler
7b5fa05a30
Merge pull request #363 from sfackler/tokio-rewrite
...
Tokio rewrite
2018-06-26 00:22:40 -04:00
Steven Fackler
70758bcd93
tokio-postgres TLS setup
2018-06-25 21:16:18 -07:00
Steven Fackler
5fbe20fd25
Auth tests
2018-06-21 22:38:42 -04:00
Steven Fackler
7d9cb040c5
update build version
2018-06-20 21:11:44 -04:00
Steven Fackler
24d216cd7f
simplify test a bit
2018-06-20 21:08:08 -04:00
Steven Fackler
e86091a268
Working select/execute
2018-06-20 20:06:11 -04:00
Steven Fackler
cb805d6057
Add execute
2018-06-19 22:10:07 -04:00
Steven Fackler
aa0fca4929
tag futures as must use
2018-06-19 19:54:29 -04:00
Steven Fackler
e9db2bf284
Defer message sends until first poll
...
This matches up generally with the "futures do nothing until polled"
model.
2018-06-19 19:51:30 -04:00
Steven Fackler
9d5a36e173
Only flush if necessary
...
If poll_write was blocked trying to write a request out to the socket,
it's because the write triggered a flush and the socket wasn't ready. We
don't want to try to flush again, since it's at best a waste of time and
at worst can cause a deadlock if the socket becomes available after the
poll_write and before the poll_flush. If that happens, we should be in
poll_write again writing more data but that wouldn't happen.
2018-06-18 22:49:53 -04:00
Steven Fackler
13fcea7ae2
Working statement preparation
2018-06-18 22:34:25 -04:00
Steven Fackler
0d0435fc2e
Start on prepare
2018-06-18 08:18:04 -04:00
Steven Fackler
8c3770bd57
Start on tokio-postgres rewrite
2018-06-16 21:29:27 -07:00
Steven Fackler
5ad7850009
Merge pull request #360 from sfackler/channel-binding
...
Support SCRAM channel binding for Postgres 11
2018-06-02 16:40:29 -07:00
Steven Fackler
11ffcac087
Support SCRAM channel binding for Postgres 11
2018-06-01 23:07:33 -07:00