Commit Graph

1463 Commits (c3e41872a81e9ece6fd528c25a9b3fcab847ccf9)

Author SHA1 Message Date
Jack Christensen 27b8876ea3 Add Pool.AcquireAllIdle() 2019-04-27 08:02:52 -05:00
Jack Christensen 46a92b5cd4 Run pool tests parallel 2019-04-25 15:41:17 -05:00
Jack Christensen d93de3fdc7 Add CopyFrom to pool 2019-04-25 15:35:53 -05:00
Jack Christensen 7b1272d254 Add SendBatch to pool 2019-04-25 15:07:35 -05:00
Jack Christensen 00d123a944 Prune methods that delegated to *pgconn.PgConn 2019-04-25 14:25:16 -05:00
Jack Christensen aed6b822d9 Split batch command and result 2019-04-24 16:39:06 -05:00
Jack Christensen 7b4e145e7c Remove Batch.die 2019-04-24 16:03:50 -05:00
Jack Christensen 3795c7131a Remove unused Batch.ctx 2019-04-24 16:02:23 -05:00
Jack Christensen c7d03eb555 Add RowsFromResultReader 2019-04-24 15:57:50 -05:00
Jack Christensen a19ca0638f Reorganize conn and rows 2019-04-24 14:16:52 -05:00
Jack Christensen 044a55ad2c Remove unused Batch.resultsRead 2019-04-24 13:44:25 -05:00
Jack Christensen 187157e773 Remove unused Batch.inTx 2019-04-24 13:43:37 -05:00
Jack Christensen 898925303d Update pool todo 2019-04-24 13:41:05 -05:00
Jack Christensen d5c510b590 Remove unused Batch field 2019-04-24 13:40:54 -05:00
Jack Christensen 2263521f70 Only have a single Begin transaction method 2019-04-24 13:35:27 -05:00
Jack Christensen 1b8f0016e9 Split pgtype into own repo 2019-04-20 19:20:00 -05:00
Jack Christensen cc3461e65d Use golang.org/x/xerrors 2019-04-20 17:43:44 -05:00
Jack Christensen efb333df6b Fix go modules
Wow. This is fun. Sure is easy to get modules wrong when upgrading a v2+
project.
2019-04-20 17:41:08 -05:00
Jack Christensen b7e56b003a Replace lastStmtSent with pgconn support 2019-04-20 17:12:20 -05:00
Jack Christensen 35a0f64876 Pass ctx to PgConn.Prepare 2019-04-20 12:06:11 -05:00
Jack Christensen 0f95329c5a Remove commented out unused one round trip mode 2019-04-20 12:02:02 -05:00
Jack Christensen de40fea100 Remove unused variables 2019-04-20 12:00:07 -05:00
Jack Christensen 66625e6489 Prepare takes context
Also remove PrepareEx. It's primary usage was for context. Supplying
parameter OIDs is unnecessary when you can type cast in the query SQL.
If it does become necessary or desirable to add options back it can be
added in a backwards compatible way by adding a varargs as last
argument.
2019-04-20 11:47:16 -05:00
Jack Christensen dc699cefc7 Conn.CopyFrom takes context 2019-04-20 11:38:23 -05:00
Jack Christensen 95756b1d7f Deallocate takes context 2019-04-20 11:34:52 -05:00
Jack Christensen 1f010f412d Simplify Batch.Queue for prepared statements 2019-04-20 11:29:28 -05:00
Jack Christensen af1beca9a5 Update pgconn to resolve batch deadlock issue 2019-04-20 11:27:43 -05:00
Jack Christensen 005c404c23 Remove CopyFromReader tests
Equivalent functionality is in pgconn.PgConn.CopyFrom.
2019-04-20 10:02:51 -05:00
Jack Christensen 427cfe1c16 Remove unnecessary mux 2019-04-19 16:23:06 -05:00
Jack Christensen 2978a7440a Use pgconn for more conn status 2019-04-19 16:18:47 -05:00
Jack Christensen ae73ca2da1 Update to more effecient pgconn 2019-04-19 15:55:45 -05:00
Jack Christensen abdd5a4a50 Drop travis testing for 9.3 and add for 11 2019-04-13 18:59:54 -05:00
Jack Christensen 6c1be9b220 Add pool configuration
MaxConns is only knob at moment
2019-04-13 18:55:02 -05:00
Jack Christensen 1b7ff4d774 Remove unused config field 2019-04-13 18:15:02 -05:00
Jack Christensen 57b149e8e9 Remove unused scan float into numeric 2019-04-13 18:06:09 -05:00
Jack Christensen affd192c6c Tweak example to run on Travis 2019-04-13 18:01:39 -05:00
Jack Christensen 7c1ff89703 Comment out broken example so go test ./... can run 2019-04-13 17:13:48 -05:00
Jack Christensen 5cc4796c96 Test domains when registered and unregistered
Fix bug assigning to unknown type.
2019-04-13 17:09:51 -05:00
Jack Christensen a6bdd8fd49 Hard code standard PostgreSQL types
Instead of needing to instrospect the database on connection preload the
standard OID / type map. Types from extensions (like hstore) and custom
types can be registered by the application developer. Otherwise, they
will be treated as strings.
2019-04-13 16:45:52 -05:00
Jack Christensen 95058dc476 Use Go modules on Travis CI 2019-04-13 15:33:33 -05:00
Jack Christensen dac6bfdc61 Fix up some of the examples 2019-04-13 14:31:16 -05:00
Jack Christensen 6c0de9ff37 More transcoding type tests
Text every combination of text and binary arguments and text and binary
results.
2019-04-13 14:17:04 -05:00
Jack Christensen 2a55a4048a Add QueryResultFormats option 2019-04-13 14:06:48 -05:00
Jack Christensen 93aa913677 Fix long standing text array text format null bug 2019-04-13 14:06:01 -05:00
Jack Christensen 36461eff94 Remove unused method 2019-04-13 12:07:41 -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 5a374c467f Fix Exec prepared statement with 0 args 2019-04-13 08:37:15 -05:00
Jack Christensen b638d52a4f Dirty hack to get a few more stdlib tests to pass 2019-04-12 21:42:50 -05:00
Jack Christensen ec0bae649a Fix Ping 2019-04-12 21:42:16 -05:00
Jack Christensen f756d9d591 Extract scan value to pgtype 2019-04-12 21:31:59 -05:00