Jack Christensen
7dd26a34a1
Fix block when reading more than buffered
2022-06-04 20:28:23 -05:00
Jack Christensen
afa702213f
More TLS support
2022-06-04 20:10:23 -05:00
Jack Christensen
51655bf8f4
Steps toward TLS
2022-06-04 17:46:00 -05:00
Jack Christensen
2b80beb1ed
Litle more TLS support
2022-06-04 13:06:29 -05:00
Jack Christensen
765b2c6e7b
Add testing of TLS
2022-06-04 12:29:30 -05:00
Jack Christensen
5b64432afb
Introduce testVariants in prep for TLS
2022-06-04 09:48:19 -05:00
Jack Christensen
ecebd7b103
Handle and test read of previously buffered data
2022-06-04 09:32:14 -05:00
Jack Christensen
09c64d8cf3
Rename nbbconn to nbconn
2022-06-04 09:05:50 -05:00
Jack Christensen
73398bc67a
Remove backup files
2022-06-04 08:59:53 -05:00
Jack Christensen
ca22396789
wip
2022-06-02 19:32:55 -05:00
Jack Christensen
2e7b46d5d7
Update comments
2022-05-30 08:32:43 -05:00
Jack Christensen
bf1edc77d7
fixed putting wrong size bufs
2022-05-28 19:40:33 -05:00
Jack Christensen
1f7a855b2e
initial not quite working non-blocking conn
2022-05-28 18:13:47 -05:00
Jack Christensen
e12ba1b6b9
Extract iobufpool
2022-05-28 10:59:54 -05:00
Jack Christensen
5714896b10
Restructure sending messages
...
Use an internal buffer in pgproto3.Frontend and pgproto3.Backend instead
of directly writing to the underlying net.Conn. This will allow tracing
messages as well as simplify pipeline mode.
2022-05-21 11:06:44 -05:00
Jack Christensen
1f4b34f932
Merge branch 'master' into v5-dev
2022-04-23 11:05:24 -05:00
Jack Christensen
c323ab6662
Merge remote-tracking branch 'pgconn/master' into v5-dev
2022-04-23 10:48:44 -05:00
Jack Christensen
f14fb3d692
Replace interface{} with any
2022-04-09 09:12:55 -05:00
Jack Christensen
f27178ba85
Initial privatization of stmtcache
...
ConnConfig.BuildStatementCache is pending removal once connections
always have separate caches for prepared and described statements.
2022-03-12 08:35:31 -06:00
Jack Christensen
1cef9075d9
Simply typed nil and driver.Valuer handling
...
* Convert typed nils to untyped nils at beginning of encoding process.
* Restore v4 json/jsonb null behavior
* Add anynil internal package
2022-03-05 19:53:59 -06:00
Andrew Rusakow
a86ece025c
Fix single line comment for line endings in mac when sanitizing.
2022-03-04 18:17:40 -06:00
Jack Christensen
2e0ec225de
Make Chunkreader an internal implementation detail
2022-02-26 08:50:46 -06:00
Jack Christensen
d13f651810
Finish importing pgio as internal package
2022-02-21 14:35:20 -06:00
Jack Christensen
95cbbfe441
Import pgproto3
...
Also copy in pgmock as an internal package.
2022-02-21 13:22:42 -06:00
Jack Christensen
72cc95e4dd
Bump module version to v5
2021-12-11 13:29:03 -06:00
Jack Christensen
162dc65eff
Make ContextWatcher concurrency safe
...
fixes #94
2021-11-06 08:57:49 -05:00
Jack Christensen
a49f4bb135
Use errors instead of golang.org/x/xerrors
2021-03-25 09:55:12 -04:00
Rusakow Andrew
292539a590
Add comment support when sanitizing SQL queries
2021-03-13 07:31:56 -06:00
Jack Christensen
5d2be99c25
Fix panic when closing conn during cancellable query
...
fixes #29
2020-04-07 19:38:21 -05:00
Andrew Nicoll
816e95d3ee
sanatize time to within microsecond accuracy
2020-03-27 13:03:36 +00:00
Jack Christensen
29f02807b0
Restore simple protocol support
2019-05-20 20:36:03 -05:00
Jack Christensen
1baf0ef57e
Refactor context handling into ctxwatch package
2019-05-07 18:05:06 -05:00
Jack Christensen
c53c9e6eb5
Remove simple protocol and one round trip query options
...
It is impossible to guarantee that the a query executed with the simple
protocol will behave the same as with the extended protocol. This is
because the normal pgx path relies on knowing the OID of query
parameters. Without this encoding a value can only be determined by the
value instead of the combination of value and PostgreSQL type. For
example, how should a []int32 be encoded? It might be encoded into a
PostgreSQL int4[] or json.
Removal also simplifies the core query path.
The primary reason for the simple protocol is for servers like PgBouncer
that may not be able to support normal prepared statements. After
further research it appears that issuing a "flush" instead "sync" after
preparing the unnamed statement would allow PgBouncer to work.
The one round trip mode can be better handled with prepared statements.
As a last resort, all original server functionality can still be accessed by
dropping down to PgConn.
2019-04-13 11:39:01 -05:00
Jack Christensen
8f4178b3d3
Use github.com/pkg/errors
2017-06-04 21:30:03 -05:00
Jack Christensen
7b1f461ec3
Add simple protocol suuport with (Query|Exec)Ex
2017-04-10 08:58:51 -05:00