| 1 |
Revision history for AnyEvent::DBI |
| 2 |
|
| 3 |
TODO: why does make test pass even though Slave.pm has a version mismatch? |
| 4 |
3.04 Mon Apr 23 18:30:40 CEST 2018 |
| 5 |
- forgot to bump slave version (reported by Felix Ostmann). |
| 6 |
|
| 7 |
3.03 Thu Apr 19 06:24:14 CEST 2018 |
| 8 |
- the main process socket was not actually set to nonblocking mode, |
| 9 |
causing lockups under load (reported by Felix Ostmann). |
| 10 |
|
| 11 |
3.02 Mon Sep 4 13:45:56 CEST 2017 |
| 12 |
- fixed module version mismatch (reported by Martin Barth). |
| 13 |
|
| 14 |
3.01 Sun Aug 27 11:53:26 CEST 2017 |
| 15 |
- add missing dependency to AnyEvent::Fork. |
| 16 |
|
| 17 |
3.0 Tue Aug 15 09:05:30 CEST 2017 |
| 18 |
- the exec_server constructor argument is now ignored, fork vs. exec |
| 19 |
is now decided by availability of AnyEvent::Fork::Early or not. |
| 20 |
- experimental support for fetching (but not setting) statement handle |
| 21 |
attributes: ->stattr. |
| 22 |
- use AnyEvent::Fork for process management. |
| 23 |
- switch to CBOR::XS and Convert::Scalar for further speed and memory |
| 24 |
improvements - a loop doing "select 0" is now almost twice as fast, |
| 25 |
more impressive speedups are expected for larger results. |
| 26 |
This also considerably simplified the code. |
| 27 |
- t/02_sql_lite.t wrongly assumed sqlite doesn't implement instr(), but |
| 28 |
nowadays, it does. |
| 29 |
- added stability canary support. |
| 30 |
- no longer load Scalar::Util, Fcntl, Socket and POSIX modules. |
| 31 |
- move child code into it's own module, AnyEvent::DBI::Slave. |
| 32 |
- no longer load DBI (except in slaves). |
| 33 |
|
| 34 |
2.3 Tue Apr 2 02:59:12 CEST 2013 |
| 35 |
- fix begin_work, commit and rollback, that were broken due |
| 36 |
to a precedence problem (analyzed by Jerry Lundström). |
| 37 |
- slightly improve tests. |
| 38 |
|
| 39 |
2.2 Thu May 17 04:13:27 CEST 2012 |
| 40 |
- timeouts didn't trigger (Adam Rosenstein). |
| 41 |
- do not leave zombie processes (Adam Rosenstein). |
| 42 |
|
| 43 |
2.1 Sat Oct 30 22:22:05 CEST 2010 |
| 44 |
- no longer kill -9 the child, just kill -TERM and close the connection, |
| 45 |
to avoid database corruption - this also works around a perl bug |
| 46 |
(global destruction). |
| 47 |
- convert to the faster AE API - major speedup. |
| 48 |
- use common::sense. |
| 49 |
|
| 50 |
2.0 Mon Jun 29 10:18:58 CEST 2009 |
| 51 |
- INCOMPATIBLE CHANGE: callbacks now are passed the $dbh |
| 52 |
as first argument, always. |
| 53 |
- INCOMPATIBLE CHANGE: really pass rv as third argument to exec |
| 54 |
callbacks, as documented but not implemented for 1.1. |
| 55 |
- thanks to viacheslav.t for testing. |
| 56 |
- major patch by Adam Rosenstein: |
| 57 |
- add an on_connect callback (for reliable failure notification) |
| 58 |
- add timeouts to connect and exec. |
| 59 |
- reaps server processes if you undef your AE::DBI handle and keep |
| 60 |
running. |
| 61 |
- option to start the server via exec, otherwise try to emulate |
| 62 |
close-on-exec behavior. |
| 63 |
- add the begin_work/commit/rollback methods required to actually use |
| 64 |
transactions. |
| 65 |
- add accessors for database handle attibutes such as AutoCommit, |
| 66 |
RaiseError, etc. |
| 67 |
- add support for the func() method to interact directly with a driver. |
| 68 |
- add more/real tests. |
| 69 |
|
| 70 |
1.1 Sat Dec 20 22:28:11 CET 2008 |
| 71 |
- INCOMPATIBLE CHANGE: pass result value in place of %extra |
| 72 |
to callbacks. |
| 73 |
- do not call fetchrow_arrayref on non-select statements. |
| 74 |
- do not die on non-fatal errors, unless there is no error callback |
| 75 |
(reported by Adam Rosenstein). |
| 76 |
|
| 77 |
1.0 Mon Jun 9 16:27:36 CEST 2008 |
| 78 |
- original version, an AnyEvent::HTTP clone. |