Jack Christensen
a93025479d
Add AfterClose and Conn to Rows
2016-02-13 13:03:06 -06:00
Jack Christensen
e8dcf5b3ac
Add *Tx.AfterClose hook
...
ConnPool now implements its connection with Tx via this hook instead of
manipulating the internals of Tx.
2016-02-13 11:06:44 -06:00
Jack Christensen
f004f0802c
Add ConnPool.Reset method
...
refs #110
2015-12-12 13:15:14 -06:00
Jack Christensen
20cf4f87ab
Remove notifications when releasing Conn to Pool
2015-09-26 13:24:21 -05:00
Jack Christensen
ca16a4c98f
Unlisten tweaks
...
- Use unlisten * when releasing connection with listeners to pool
- Only unlisten on releasing connection to pool when necessary
- Remove Unlisten("") as was to release all listeners
2015-09-21 08:18:10 -05:00
Joseph Glanville
eb5cadccf9
Track Listen/Unlisten and clear subscriptions on conn release
2015-09-21 07:56:45 -05:00
Jack Christensen
a1aa06c934
More efficient logging with log levels
2015-09-16 08:20:51 -05:00
Jack Christensen
93aa2b2e80
ConnPool.Begin retry logic checks connection IsAlive
...
ErrDeadConn is returned when calling an already dead connection. But the initial failure returns the real error. So we check for IsAlive instead of ErrDeadConn.
Added test for ConnPool.Begin retry logic.
2015-09-12 19:39:37 -05:00
Jack Christensen
bc4742b80a
DRY ConnPool Begin and BeginIso
2015-09-12 19:12:55 -05:00
Jack Christensen
6ac98ef613
Add test for ConnPool.Begin retry
...
Also fix bug where conn is not released on non ErrDeadConn error
returned from Conn.Begin
2015-09-12 19:10:55 -05:00
Joseph Glanville
4868929ff1
ConnPool.Begin/BeginIso will retry if they Acquire a dead connection
2015-09-11 03:05:43 +10:00
Jack Christensen
db5300358a
Allow ConnPool to have MaxConnections of 1
2015-05-25 09:54:56 -05:00
Jack Christensen
d2ce556450
ConnPool no longer creates connections just to release them.
2014-11-12 08:11:33 -06:00
Jack Christensen
efea92e8be
Fix connection pool close
...
Close should close successfully acquired connections, not failures.
fixes #45
2014-11-11 17:59:13 -06:00
Jack Christensen
f5156ac4eb
discardLogger should be private
2014-09-04 16:45:35 -05:00
Jack Christensen
98109c57bb
Use interface for logging instead of log15 directly
2014-09-04 16:00:53 -05:00
Jack Christensen
aff5043df9
Added a lot of documentation
2014-07-12 21:17:38 -05:00
Jack Christensen
e33fb9d5d8
Remove ConnPool functions overlapped by Stat
2014-07-12 20:12:56 -05:00
Jack Christensen
ae6a87545b
Use database/sql style transaction interface
2014-07-12 07:59:30 -05:00
Jack Christensen
f31665c5db
wip
2014-07-12 07:11:16 -05:00
Jack Christensen
d7529600e0
Rename QueryResult to Rows
...
This helps conform closer to database/sql
2014-07-11 08:21:29 -05:00
Jack Christensen
43dcd47a92
Move to Scan interface
...
Remove SelectValue
2014-07-05 18:23:19 -05:00
Jack Christensen
5b345e80e1
Remove SelectValueTo
...
Benchmarks revealed that it is no longer performant enough to pull
its own wait. Using go_db_bench to copy JSON results to HTTP responses
it was ~20% *slower* for ~4BK responses and less than 10% faster for
+1MB responses.
The the performance problem was in io.CopyN / io.Copy. io.Copy
allocates a 32KB buffer if it doesn't have io.WriterTo or io.ReaderFrom
available. This extra alloc on every request was more expensive than
just reading the result into a string and writing it out to the response
body.
Tests indicated that if MsgReader implemented a custom Copy that used a
shared buffer it might have a few percent performance advantage. But the
additional complexity is not worth the performance gain.
2014-07-05 09:32:47 -05:00
Jack Christensen
d30ef1b8b9
Replace SelectFunc with Query as core
2014-06-28 17:07:31 -05:00
Jack Christensen
b6ac3ef2b0
Rename Execute to Exec
2014-06-27 14:56:27 -05:00
Jack Christensen
6bb0a9fa75
Default ConnPool MaxConnections to 5, require min of 2
2014-06-21 18:21:41 -05:00
Jack Christensen
cbddbb423e
Replace logging functionality with log15
...
gopkg.in/inconshreveable/log15.v2
2014-06-02 19:47:09 -05:00
Jack Christensen
f119d5221c
Add CommandTag
2014-05-19 09:32:31 -05:00
Jack Christensen
6d6fb4561a
ConnPoolConfig embeds ConnConfig
2014-05-19 07:59:51 -05:00
Jack Christensen
9067b2d991
Rename ConnectionPoolOptions to ConnPoolConfig
2014-05-17 13:44:55 -05:00
Jack Christensen
2da1751e1a
Rename ConnectionPoolStat to ConnPoolStat
2014-05-17 13:41:44 -05:00
Jack Christensen
f9a2501100
Rename ConnectionPool to ConnPool
2014-05-17 13:40:50 -05:00