Commit Graph

1382 Commits (abdd5a4a5023c3b751518c939b7596607c562fab)

Author SHA1 Message Date
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
Jack Christensen 69946b35d8 Remove blank line 2019-04-12 21:24:14 -05:00
Jack Christensen b78ecf26dc Fix encode empty value 2019-04-12 21:23:57 -05:00
Jack Christensen 072391f4a8 Initial pass at fixing pgtype tests
Many still failing, but at least it compiles now.
2019-04-12 16:58:42 -05:00
Jack Christensen b77f901168 Inital pass at converting stdlib
Multiple tests still failing
2019-04-12 16:57:42 -05:00
Jack Christensen 3901f3ef88 Add Conn.PgConn escape hatch 2019-04-12 16:57:25 -05:00
Jack Christensen 3497f0e8f9 Expose ParseConfig 2019-04-12 16:56:54 -05:00
Jack Christensen 0254279df7 Add todos for pool 2019-04-12 16:56:18 -05:00
Jack Christensen 938ee9f434 Rows and Row are now interfaces 2019-04-11 17:58:16 -05:00
Jack Christensen 5ea8191003 Add notes about error values 2019-04-11 17:53:27 -05:00
Jack Christensen 3e87a8b363 Conn.Close takes context 2019-04-10 14:56:14 -05:00
Jack Christensen 2f948c5249 Remove unused code 2019-04-10 14:33:35 -05:00
Jack Christensen acd15cf589 Remove some obsolete context handling 2019-04-10 14:25:06 -05:00
Jack Christensen 54c6ddc2f0 Commit and Rollback take context
Remove Ex versions.
2019-04-10 12:22:12 -05:00
Jack Christensen 7718ee6207 Remove Ex versions of Query and QueryRow
Always require context and prepend options to arguments if necessary.
2019-04-10 12:12:22 -05:00
Jack Christensen b69179cebb Remove Conn.Listen and Conn.Unlisten
Use Conn.Exec instead to listen or unlisten.
2019-04-10 11:21:40 -05:00
Jack Christensen 77a2da2b46 Replace connection pool 2019-04-10 11:09:42 -05:00
Jack Christensen ec10fdde8b Core of new connection pool 2019-04-09 21:32:01 -05:00
Jack Christensen 1715b17abb Handle too many params in pgconn 2019-04-05 12:09:15 -05:00
Jack Christensen d619d8913e Remove cancel query logic 2019-04-05 11:04:57 -05:00
Jack Christensen d2ad2ed5d8 Remove tests context cancel
Context cancellation is now fatal so no need to test recovery.
2019-04-05 11:00:35 -05:00
Jack Christensen 858d00788a Use extracted packages with Go modules 2019-04-05 10:59:47 -05:00
Jack Christensen d287776d97 Use LogLevel type consistently 2019-03-23 11:32:38 -05:00
Jack Christensen 4ed4e0122d Restore simple protocol support 2019-02-02 13:27:18 -06:00
Jack Christensen bd181764bf Remove ensureConnectionReadyForQuery 2019-02-02 13:00:31 -06:00
Jack Christensen 577bc57ba5 Remove sendSimpleQuery
In preparation for removing ready for query tracking.
2019-02-02 12:55:12 -06:00
Jack Christensen 1127f31cb3 Remove sendPreparedQuery and simplify sendSimpleQuery 2019-02-02 12:47:12 -06:00
Jack Christensen 52e8d0d679 Remove *Conn.sendQuery 2019-02-02 12:45:10 -06:00
Jack Christensen 1ccd6527f5 Remove rxMsg 2019-02-02 12:41:44 -06:00
Jack Christensen 2e3738f0a9 Replication partially working 2019-02-02 12:15:48 -06:00
Jack Christensen 08c8b49fe4 Remove another no longer used method 2019-02-02 11:54:04 -06:00
Jack Christensen 5cb17c5859 Remove unused method 2019-02-02 11:52:25 -06:00