Jack Christensen
c31b89a3f2
Delay handling invalidated statements when in transaction
2022-07-09 10:20:54 -05:00
Jack Christensen
e7aa76ccf9
SendBatch now uses pipeline mode to prepare and describe statements
...
Previously, a batch with 10 unique parameterized statements executed
100 times would entail 11 network round trips. 1 for each prepare /
describe and 1 for executing them all. Now pipeline mode is used to
prepare / describe all statements in a single network round trip. So it
would only take 2 round trips.
2022-07-09 09:32:36 -05:00
Jack Christensen
76946fb5a3
Replace QueryFunc with ForEachScannedRow
2022-07-07 20:29:04 -05:00
Jack Christensen
1168b375e4
Expose pgx functionality for manual integration with pgconn
...
This is primarily useful for using pipeline mode.
2022-07-04 13:29:49 -05:00
Jack Christensen
a89a400b69
Fix documentation for Rows.RawValues and test new behavior
2022-04-30 08:27:57 -05:00
Jack Christensen
e8f81bb7de
Merge branch 'master' into v5-dev
...
Rewrite fix for https://github.com/jackc/pgx/issues/1196 for pgx v5.
2022-04-28 08:06:34 -05:00
Jack Christensen
7ceeea6fe6
Fix explicitly prepared statements with describe statement cache mode
...
fixes https://github.com/jackc/pgx/issues/1196
2022-04-28 07:58:24 -05:00
Jack Christensen
107196ab0c
Add NamedArgs
...
https://github.com/jackc/pgx/issues/1186
https://github.com/jackc/pgx/issues/387
2022-04-23 18:45:38 -05:00
Jack Christensen
b72b0daa5a
Add QueryRewriter interface
2022-04-23 17:26:42 -05:00
Jack Christensen
1f4b34f932
Merge branch 'master' into v5-dev
2022-04-23 11:05:24 -05:00
Jack Christensen
097b6aacb7
Add time to logging failed Exec
...
fixes #1189
2022-04-21 19:26:25 -05:00
Jack Christensen
f14fb3d692
Replace interface{} with any
2022-04-09 09:12:55 -05:00
Jack Christensen
ee93440ac1
pgtype uses pgxtest
...
Added ValueRoundTripTest to pgxtest
Removed pgtype/testutil
pgtype tests now run with all (applicable) query modes. This gives
better coverage than before and revealed several bugs which are also
fixed in this commit.
2022-04-02 14:34:19 -05:00
Jack Christensen
500c0721d7
Improve error messages for query argument encoding
2022-04-01 18:00:25 -05:00
Jack Christensen
72b72b9ae9
Remove dead code
2022-03-12 15:07:32 -06:00
Jack Christensen
cb721dfb5b
SendBatch supports default QueryExecMode
2022-03-12 15:06:13 -06:00
Jack Christensen
1390a11fe2
Query supports QueryExecMode
...
Fixed QueryExecModeExec as it must only use text format without
specifying param OIDs.
2022-03-12 14:15:39 -06:00
Jack Christensen
46966227bc
Enable all QueryExecModes for exec path
2022-03-12 10:04:02 -06:00
Jack Christensen
8e341e20f3
Remove ConnConfig.BuildStatementCache
2022-03-12 09:23:40 -06: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
fe21cc7486
Use Map.Encode path for simple protocol
2022-03-05 21:40:49 -06:00
Jack Christensen
c4b08378f2
Handle driver.Valuers inside Map.Encode
2022-03-05 21:27:17 -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
Jack Christensen
0d8e109c21
Test every QueryExecMode
2022-03-05 14:04:51 -06:00
Jack Christensen
aad3d65e16
Initial restructure of simple protocol to query exec mode
2022-03-05 10:27:15 -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
1f2f239d09
Renamed pgtype.ConnInfo to pgtype.Map
2022-02-21 09:13:09 -06:00
Jack Christensen
bda10b2ec9
Rename pgtype.DataType to pgtype.Type
2022-02-21 09:01:48 -06:00
Jack Christensen
5daa487a2c
Merge branch 'master' into v5-dev
2022-02-21 08:35:11 -06:00
Jack Christensen
b6b24f9e8a
Allocate connRows on demand instead of preallocating in bulk
...
The 64 element preallocatedRows may be pinning memory from previous
queries.
See https://github.com/jackc/pgx/issues/1127
2022-02-19 11:51:25 -06:00
Jack Christensen
1e565b0d44
Handle stmtCache.Get error previously thought impossible
...
The statement cache is already prefilled, but it is possible for the
ctx to be canceled between when the statement is prepared and when the
statement is retrieved for use.
refs #1156
2022-02-19 11:28:39 -06:00
Jack Christensen
9c5dfbdfb3
pgconn.CommandTag is now an opaque type
...
It now makes a copy instead of retaining driver memory. This is in
preparation to reuse the driver read buffer.
2022-02-12 10:26:26 -06:00
Jack Christensen
4b6d527b0b
Merge branch 'master' into v5-dev
2022-02-12 09:22:37 -06:00
Saimon Shaplygin
4ac1499060
ref: remove anchored code
2022-02-12 09:15:24 -06:00
Jack Christensen
558748ef9c
ArrayCodec contains element DataType
2022-01-29 16:41:07 -06:00
Jack Christensen
b5bf9d7bb9
Move LoadDataType to pgx.Conn
2022-01-29 16:32:05 -06:00
Jack Christensen
72cc95e4dd
Bump module version to v5
2021-12-11 13:29:03 -06:00
Jack Christensen
0e293b966c
Finish import of pgconn
2021-12-04 14:06:57 -06:00
Jack Christensen
7e13db4538
Finish import of pgtype repo
...
Fix some tests that broke by merging repos
Tweak readme wording
2021-12-04 13:45:57 -06:00
Jack Christensen
a457da8bff
Unpin extendedQueryBuilder memory immediately after use
...
refs #1110
2021-11-13 17:12:09 -06:00
Jack Christensen
851091fdf4
Improve Query docs regarding error detection
2021-11-13 04:42:28 -06:00
Dan Gillis
b28c053c39
Add comments
2021-09-25 09:26:59 -05:00
Dan Gillis
bb8d7ffc87
Add comments
...
Add several comments and correct ConnectConfig
2021-09-25 09:26:59 -05:00
Jack Christensen
a49f4bb135
Use errors instead of golang.org/x/xerrors
2021-03-25 09:55:12 -04:00
Jack Christensen
f8c43c97ab
Document prefer_simple_protocol config option
2021-03-04 19:58:52 -06:00
Jack Christensen
d9ac491657
Add prefer_simple_protocol option to ParseConfig
...
refs #650
2021-03-04 19:56:14 -06:00
Jack Christensen
e8f959e0e1
Add QueryFunc
...
refs #821
2020-12-12 09:39:58 -06:00
Ethan Pailes
1df45d758d
fix stmtcache invalidation
...
This patch fixes jackc/pgx#841. The meat of the fix lives
in [a PR to the pgconn repo][1]. This change just checks
for errors after executing a prepared statement and informs
the underlying stmtcache about them so that it can properly
clean up. We don't try to get fancy with retries or anything
like that, just return the error and allow the application to handle it.
I had to make [some][1] [changes][2] to to the jackc/pgconn package as well
as this package.
Fixes #841
[1]: https://github.com/jackc/pgconn/pull/56
[2]: https://github.com/jackc/pgconn/pull/55
2020-11-12 08:15:13 -05:00
Jack Christensen
7c47415150
Fix SendBatch of all prepared statements with statement cache disabled
...
fixes #856
2020-10-29 20:28:57 -05:00
Oleg Kovalov
5f8d853b34
remove unused definitions on conn.go
2020-10-12 08:13:52 -05:00