Hi Folks,
I am currently working on a c++11 asio based async connector for mariadb. The
library takes advantage of mariadb’s async interface (mysql_*_start,
mysql_*_cont functions). The whole point would be to prevent blocking in mysql
operations and make operations cancellable via a reasonable interface.
Some example code:
TEST_CASE("tmp3") {
init_db();
asio::io_service io;
amdb::connector conn(io);
bool saved = false;
entity e(42, 3.14, "our entity");
amdb::auth_info auth("root");
conn.async_connect(amdb::null_endpoint, "edbtest", auth,
amdb::default_flags, [&] (const std::error_code& ec) {
REQUIRE(!ec);
conn.async_write_entity(e, [&] (const std::error_code &ec) {
INFO(ec);
REQUIRE(!ec);
if (!ec) {
saved = true;
}
io.stop();
});
});
io.run();
REQUIRE(saved);
}
async_write_entity() is an extra feature of the lib, which is generating an sql
“batch” of prepared statements to persist hierarchical objects and executes
that batch.
Unfortunately I am receiving an error 2006 from my very first
mysql_stmt_prepare call. This error roughly translates to "connection to mysql
server is gone”. I cannot really spot the issue with my operation, could
someone give me a hint about this error (typical causes, what to check, etc
etc.)? I am a bit clueless here how to tackle this problem.
Since the batch generation/execution code is a bit convoluted and complex, i
would not paste it here now, but if someone can point me in the right direction
i can share relevant parts.
Thanks in advance
Andras
--
András Szabó
Sent with Airmail_______________________________________________
Mailing list: https://launchpad.net/~maria-developers
Post to : [email protected]
Unsubscribe : https://launchpad.net/~maria-developers
More help : https://help.launchpad.net/ListHelp