From: Date: October 25 2007 7:59pm Subject: RE: Sample files -- BadQuery w/Errnum patch part 4 List-Archive: http://lists.mysql.com/plusplus/7136 Message-Id: <5AA52B773286DA4E83B1F2D034FFED3763BDF0@mailexchange.klausatlanta.local> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: quoted-printable I'm thinking the deadlock test may not be a useful for mysql++. I've altered xaction.cpp to test errnum(), which is much simpler. Here's the patch.=20 Index: xaction.cpp =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D= =3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D --- xaction.cpp (revision 1779) +++ xaction.cpp (working copy) @@ -86,6 +86,22 @@ cout << "\nNo, yuck! We don't like catsup. Rolling it back:" << endl; print_stock_table(query); + + // Now let's test errnum on the exception being=20 + // affected by rollback on the trans + try { + mysqlpp::Transaction trans(con); + cout << "\nNow testing exeption..." << endl; + + query << "select syntax from error"; + query.execute(); + query.reset(); + } + catch (const mysqlpp::BadQuery& er) { + // Handle any query errors + cerr << "Got an expected Query error: " << er.what() << endl << " er.what_errnum() =3D " << er.what_errnum() << = " con.errnum() =3D " << con.errnum() << endl; + } + =09 } catch (const mysqlpp::BadQuery& er) {