3494 Commits

Author SHA1 Message Date
William Storey
4db2a33562 Do not convert IPv4-mapped IPv6 addresses to IPv4
These addresses behave differently in some cases, so assume if we're
given them, we keep them as they are.
2022-06-07 18:34:04 -05:00
William Storey
1e485c1c3b Do not send IPv4 networks as IPv4-mapped IPv6
Previously if we provided a parameter that was an array of strings such
as []string{"0.0.0.0/8"}, we would encode this when sending to Postgres
as ::ffff:0.0.0.0/8. From what I can tell, this is because when parsing
the IP/network using net functions, we get a byte array that is 16 bytes
long, even if it is an IPv4 network. In Inet.EncodeBinary(), we look at
the length of the IP to determine what family the input is, and saw it
as IPv6 because of this.

We now always normalize IPv4 addresses using To4().
2022-06-07 18:34:04 -05:00
William Storey
6fc738ea05 Use correct test description 2022-06-07 18:34:04 -05:00
James Hartig
2afddedda8 protect against panic from PlanScan when interface{}(nil) is passed 2022-06-02 20:21:53 -05:00
Jack Christensen
37c3f157bc Add Hijack from v5 2022-06-02 20:04:08 -05:00
Jack Christensen
e12ba1b6b9 Extract iobufpool 2022-05-28 10:59:54 -05:00
Jack Christensen
7d5993d104 Add BenchmarkConnectClose 2022-05-28 06:32:39 -05:00
James Hartig
824d8ad40d support *sql.Scanner for null handling
Fixes jackc/pgx#1211
2022-05-28 06:30:12 -05:00
Oliver Tan
7ddbd74d5e stop ignoring ErrorResponse during GSS auth 2022-05-25 06:22:18 -05:00
Jack Christensen
bfaea9e7ec Fix rare race in CopyFrom 2022-05-24 08:26:37 -05:00
Jack Christensen
55e0b4c30e Skip CockroachDB in TestTrace 2022-05-23 18:15:53 -05:00
Jack Christensen
b59cd50508 TestTrace enables tracing after connection established
This avoids locking to a specific version of the server.
2022-05-23 17:52:10 -05:00
Jack Christensen
67635f896c Fix output to include message size and add some docs 2022-05-21 17:30:47 -05:00
Jack Christensen
b74c109f61 Optimize tracing
The addition of tracing caused messages to escape to the heap. By
avoiding interfaces the messages no longer escape.
2022-05-21 17:22:58 -05:00
Jack Christensen
f2e96156a0 Add message tracing 2022-05-21 14:43:04 -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
dc0ad04ff5 Fix batch logging tests 2022-05-12 19:10:02 -05:00
Stepan Rabotkin
4099b447b9 feat: add batch logging 2022-05-12 19:05:08 -05:00
Stepan Rabotkin
bfb19cd4f6 feat: add time duration to error query and copy 2022-05-12 19:05:08 -05:00
Jack Christensen
989a4835de Remove rune to text conversion
Because rune is an alias for int32 this caused some very surprising
results. e.g. inserting int32(65) into text would insert "A" instead of
"65".
2022-05-12 17:13:49 -05:00
Jack Christensen
8b9b4055f3 Release v4.16.1 v4.16.1 2022-05-07 07:14:53 -05:00
Jack Christensen
644bd73dcc Upgrade to pgconn v1.12.1 2022-05-07 07:13:23 -05:00
Jack Christensen
831fc211bc Release v1.12.1 2022-05-07 07:11:19 -05:00
Rafi Shamim
1d398317ca Stop ignoring ErrorResponse during SCRAM auth
The server may send back an ErrorResponse during SCRAM auth, and these
messages may contain useful information that described why
authentication failed. For example, if the password was invalid.
2022-05-07 07:03:52 -05:00
Eno Compton
0135721378 Add support for Unix sockets on Windows
Fixes #1199.
2022-05-07 06:59:53 -05:00
Jack Christensen
c1495aace0 Add RowScanner interface 2022-04-30 12:49:12 -05:00
Jack Christensen
01190e5d78 Update ScanPlan.Scan documentation 2022-04-30 08:29:51 -05:00
Jack Christensen
a89a400b69 Fix documentation for Rows.RawValues and test new behavior 2022-04-30 08:27:57 -05:00
Jack Christensen
81d55568f6 Clarify v5 supported Go version plans
fixes https://github.com/jackc/pgx/issues/1197
2022-04-28 08:13:51 -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
d9622f438d Merge remote-tracking branch 'pgconn/master' into v5-dev 2022-04-28 08:01:26 -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
0c6266ef30 Fix scanning null did not overwrite slice 2022-04-26 14:52:01 -05:00
sireax
84e8238fa0 Fix: setting krbspn and krbsrvname did'n work 2022-04-26 08:54:24 -05:00
Jack Christensen
7427820aba Scan binary UUID to string
https://github.com/jackc/pgx/issues/1191
2022-04-26 08:37:10 -05:00
Jack Christensen
d13bdbbd35 NamedArgs allows underscore 2022-04-25 10:16:47 -05:00
Harmen
d846dbcb75 allow string values in timestamp[tz].Set() 2022-04-25 08:43:55 -05:00
Diego Becciolini
53266f029f Hstore: fix AssignTo
Hstore.AssignTo a map of string pointers takes the address of the loop variable, thus setting all the entries to the same string pointer.

extend TestHstoreAssignToNullable

assert fix
2022-04-25 08:38:20 -05:00
Jack Christensen
c093c4af21 Update changelog 2022-04-23 18:56:38 -05:00
Jack Christensen
107196ab0c Add NamedArgs
https://github.com/jackc/pgx/issues/1186
https://github.com/jackc/pgx/issues/387
v5.0.0-alpha.3
2022-04-23 18:45:38 -05:00
Jack Christensen
b72b0daa5a Add QueryRewriter interface 2022-04-23 17:26:42 -05:00
Jack Christensen
f9857b73d9 Skip multirange tests on PG < 14 2022-04-23 16:55:24 -05:00
Jack Christensen
dfb681d716 Build / rewrite / port multirange support 2022-04-23 12:50:18 -05:00
Jack Christensen
126b582f19 Make range helpers private 2022-04-23 11:10:04 -05:00
Jack Christensen
1f4b34f932 Merge branch 'master' into v5-dev 2022-04-23 11:05:24 -05:00
Jack Christensen
cb45e85954 Merge remote-tracking branch 'pgtype/master' into v5-dev 2022-04-23 11:00:07 -05:00
Jack Christensen
c323ab6662 Merge remote-tracking branch 'pgconn/master' into v5-dev 2022-04-23 10:48:44 -05:00
Jack Christensen
a92f1df1df Merge remote-tracking branch 'pgproto3/master' into v5-dev
Pull in pgproto3 changes and update for pgx v5
2022-04-23 10:43:48 -05:00
Jack Christensen
468b793282 Skip tests with unsupported types on CockroachDB 2022-04-23 10:34:53 -05:00
Jack Christensen
791176f4fe Add link to github.com/vgarvardt/pgx-google-uuid 2022-04-23 10:26:41 -05:00