Commit Graph

1463 Commits (c3e41872a81e9ece6fd528c25a9b3fcab847ccf9)

Author SHA1 Message Date
Jack Christensen c3e41872a8 Resplit Begin and BeginEx
This is in preparation for a Begin / Tx interface that will similate
nested transactions with savepoints.

In addition, this passes the TxOptions struct by value and thereby
removes an allocation.
2019-08-17 15:53:55 -05:00
Jack Christensen f3c703a102 Remove Conn SetLogger and SetLogLevel
Simplifying interface
2019-08-17 15:34:29 -05:00
Jack Christensen 99c54fbec0 Tweak Conn comment 2019-08-17 13:46:22 -05:00
Jonathan Yoder 0c07df20b2 Clarify stdlib.AcquireConn Comment 2019-08-15 08:41:13 -05:00
Jack Christensen 5eae85194e Bring stdlib iso change from v3 2019-08-08 15:35:30 -05:00
Jack Christensen faa980a256 Add tests for deferred constraint errors
Port tests from v3.

Fix is implemented in pgconn f0b479097a.
2019-08-06 17:17:54 -05:00
Jack Christensen 3028821487 Add context.Context to Logger interface
This allows custom logger adapters to add additional fields to log
messages. For example, a HTTP server may with to log the request ID.

fixes #428
2019-08-03 16:16:21 -05:00
Jack Christensen ab1edc79e0 Remove 0 bytes when sanitizing identifiers
Port of 95ea78048a from v3.
2019-08-03 09:51:03 -05:00
Jack Christensen a7e821c99c Improved example on readme 2019-06-29 14:21:41 -05:00
Jack Christensen da16226e0a Update docs for first prerelease of v4 2019-06-29 13:59:11 -05:00
Jack Christensen a99cd7758a stdlib AfterConnect takes context 2019-06-29 13:53:43 -05:00
Jack Christensen 08b412740f Rename package pool to pgxpool
pool is too common a name to occupy.
2019-06-29 11:37:36 -05:00
Jack Christensen aff43ee158 Remove temp benchmark 2019-06-29 11:23:34 -05:00
Jack Christensen be89cce214 Fix NULL with extendedQueryBuilder 2019-06-01 17:30:38 -05:00
Jack Christensen c5a70faea6 Update xerrors and pgconn packages 2019-05-28 06:55:44 -05:00
Jack Christensen f26125d913 Update pgconn for fallback config fix 2019-05-27 12:51:45 -05:00
Jack Christensen 6c5ebe0213 Provide type for extended protocol query 2019-05-25 21:55:04 -05:00
Jack Christensen d40d76c181 Update and simplify test instructions 2019-05-25 10:42:23 -05:00
Jack Christensen 159d82e772 Extract replication to pgxrepl package 2019-05-25 10:24:58 -05:00
Jack Christensen dd8c63c839 Fix README typo 2019-05-23 14:50:04 -05:00
Jack Christensen 0830aae884 Remove unnecessary internal function 2019-05-20 21:03:39 -05:00
Jack Christensen 98f3e64bec Use envvars for stdlib tests 2019-05-20 20:39:45 -05:00
Jack Christensen 29f02807b0 Restore simple protocol support 2019-05-20 20:36:03 -05:00
Jack Christensen 6d23b58b01 Update url_shortener example 2019-05-17 14:13:03 -05:00
Jack Christensen 54c520695f Remove unused code 2019-05-17 14:00:13 -05:00
Jack Christensen b0dac84d77 Use extended query builder everywhere 2019-05-17 13:59:41 -05:00
Jack Christensen c418d45f75 Remove unused code 2019-05-11 11:50:50 -05:00
Jack Christensen 03abfc6452 Large objects use context 2019-05-11 11:49:59 -05:00
Jack Christensen 79f49ce300 Convert large objects to prepared statements
This allows removing semi-obsolete fastpath interface support. See
https://www.postgresql.org/docs/current/libpq-fastpath.html. This also
simplifies introducing context support.
2019-05-11 11:36:38 -05:00
Jack Christensen f572b336b1 Improve pool Acquire / Release performance
Release was using a goroutine every time. Now it only starts a goroutine
when doing something that may take a while. (Destroy and afterRelease)
2019-05-04 17:36:08 -05:00
Jack Christensen 3661a005fa Per pool.Conn preallocated resources
This removes the pool wide mutexes for preallocated resources.
2019-05-04 16:49:46 -05:00
Jack Christensen 00a1b62e91 Fix name of defaultMaxConns 2019-05-04 15:53:25 -05:00
Jack Christensen 3c7cd51a17 Preallocate poolRows 2019-05-04 15:52:59 -05:00
Jack Christensen d7fdbf1b49 Preallocate poolRow 2019-05-04 15:47:42 -05:00
Jack Christensen dc0cf11399 Bulk allocate pool Conns 2019-05-04 15:40:47 -05:00
Jack Christensen 583c8d3b25 Use pgproto3.FieldDescription instead of pgx version
This allows removing a malloc and memcpy.
2019-05-04 13:47:18 -05:00
Jack Christensen ea31df3b50 Extract extendedQueryBuilder 2019-05-04 12:32:21 -05:00
Jack Christensen 8b365ce37e Extract int16SlicePool 2019-05-04 11:01:09 -05:00
Jack Christensen dd571cf345 Remove another malloc from query path 2019-05-04 09:01:57 -05:00
Jack Christensen db68713809 Remove malloc from query path 2019-05-04 08:58:02 -05:00
Jack Christensen 85ddbfeeee Remove 2 mallocs from query path 2019-05-04 08:55:05 -05:00
Jack Christensen 7558b8d05f Add AfterConnect hook to pool 2019-04-27 16:09:23 -05:00
Jack Christensen 9008387300 Update pgconn 2019-04-27 15:45:59 -05:00
Jack Christensen 243f9031b3 Remove extra prepare in stdlib 2019-04-27 15:45:30 -05:00
Jack Christensen 71d8503b81 Remove pool/todo.txt 2019-04-27 10:43:16 -05:00
Jack Christensen 1b124baf7a Add some documentation to pool 2019-04-27 10:42:40 -05:00
Jack Christensen c604afba82 Add pool MaxConnLifetime 2019-04-27 10:25:53 -05:00
Jack Christensen c107ea5831 Default to max pool size of larger of 4 or num cpus 2019-04-27 09:40:17 -05:00
Jack Christensen ac618f105b Add pool AfterRelease hook
Also, just close returned connections that are in a transaction rather
than automatically rolling back.
2019-04-27 09:01:32 -05:00
Jack Christensen 48ea620c93 Add Pool.BeforeAcquire and ConnectConfig 2019-04-27 08:31:23 -05:00