aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2011-08-26Add support for specifying client character set for MySQL databaseBoris Kolpackov3-2/+32
2011-08-24Add support for transaction multiplexingBoris Kolpackov8-16/+44
Also delay getting a connection until after we do all the sanity checks (e.g., that there is no active transaction). Otherwise we are running risk of getting blocked rather than throwing an exception.
2011-08-22Bump version to 1.6.0.a11.6.0.a1Boris Kolpackov2-4/+4
2011-08-22Remove stray function declarationsBoris Kolpackov1-6/+0
2011-08-21Add odb::connection classBoris Kolpackov10-71/+110
This abstract class represents a connection to the database. One can use it to start a transaction or to execute a native statement out of a transaction. Before we had concrete connection classes in the database runtime libraries (e.g., odb::mysql::connection). Now these classes derive from odb::connection.
2011-08-19Rework query machinery not to use '_' as primary table aliasBoris Kolpackov3-65/+151
Now we always qualify with the actual table name and use the '_' alias for situations where an object is referencing itself.
2011-08-18Fix custom recursive loading in post_load callbackBoris Kolpackov4-3/+45
Before we called the callback while holding the statements locked. As a result, if the callback tried to load another object of this type, it failed. Now we unlock the statements (since we have completely loaded the object from ODB's point of view) and then call the callback. The callback test has been updated to test this situation.
2011-08-04Merge branch 'wrapper'Boris Kolpackov1-1/+159
2011-08-04Add support for value wrappersBoris Kolpackov1-1/+159
Wrapper is a class that wraps another type. Examples of wrappers are various smart pointers, holders, etc. A wrapper can be transparent or it can handle the NULL semantics. The new odb::nullable class template is a NULL wrapper that helps to add the NULL semantics to a value type. New test: common/wrapper.
2011-07-31Minor optimizationBoris Kolpackov1-1/+1
2011-07-28Add value_traits specializations for std::vector<char>Boris Kolpackov2-0/+52
This allows using it as a buffer for BLOB mapping.
2011-07-27Bump version to 1.6.0Boris Kolpackov2-4/+4
2011-07-25Suppress warnings1.5.0Boris Kolpackov1-5/+5
2011-07-25Bump version to 1.5.0Boris Kolpackov2-4/+4
2011-07-11Free prepared statement cache before closing connectionBoris Kolpackov1-0/+4
2011-07-04Implement support for database operations callbacksBoris Kolpackov3-8/+48
New object pragma: callback. New test: common/callback. New manual section: 10.1.4, "callback".
2011-04-27Work around VC++ bugs1.4.0Boris Kolpackov2-2/+3
2011-04-26Bump version to 1.4.0Boris Kolpackov2-4/+4
2011-04-25Reuse container traits from base objectsBoris Kolpackov2-14/+62
2011-04-25Pass id binding instead of id image in container traitsBoris Kolpackov4-25/+35
This will allow us to reuse things more.
2011-04-24Remove stray post includeBoris Kolpackov1-2/+0
2011-04-22Initial support for non-polymorphic inheritanceBoris Kolpackov1-1/+3
Every class gets a separate table. New test: common/inheritance.
2011-04-20Add missing static qualifierBoris Kolpackov1-1/+1
2011-04-19Remove stray #endifBoris Kolpackov1-2/+0
2011-04-18Implement automatic mapping for C++ enumsBoris Kolpackov5-10/+204
2011-04-18Get rid of image type argument in value_traitsBoris Kolpackov2-53/+118
2011-04-05Bump version to 1.3.01.3.0Boris Kolpackov2-4/+4
2011-04-03Make sure MySQL C API is not called from inline functionsBoris Kolpackov2-5/+7
Otherwise, on some platforms, the user may need to link to libmysqlclient explicitly.
2011-03-31Bump version to 1.3.0.b1Boris Kolpackov2-4/+4
2011-03-29Bring in other execute() overloads from odb::databaseBoris Kolpackov1-0/+2
2011-03-25Make queries without by-reference parameters immutableBoris Kolpackov1-11/+32
This makes it possible to share such queries between multiple threads without the need for synchronization.
2011-03-25Update interface to conform to what's expected by generated codeBoris Kolpackov4-8/+12
2011-03-24Rename error to truncated in bindingsBoris Kolpackov5-11/+14
2011-03-22Cosmetic changesBoris Kolpackov1-2/+2
2011-03-22Cosmetic changesBoris Kolpackov2-19/+21
2011-03-21Cosmetic changesBoris Kolpackov2-7/+5
2011-03-21Link to threaded libmysqlclient in libodb-mysql import stubBoris Kolpackov1-1/+1
2011-03-21Generate long options usageBoris Kolpackov1-0/+1
2011-03-15Avoid holding connection pool lock while pinging connection1.2.0Boris Kolpackov1-25/+42
2011-03-15Change shared_ptr callback interface to work in mt-environmentBoris Kolpackov2-7/+9
2011-03-15Bump version to 1.2.0Boris Kolpackov2-4/+4
2011-02-22Fix iteration over uncached query resultBoris Kolpackov1-1/+1
2011-02-21Add recoverable, connection_lost, and timeout exceptionsBoris Kolpackov1-2/+4
The deadlock exception now inherits from recoverable. New manual section: 3.5, "Error Handling and Recovery".
2011-02-21Factor out active statement cancelling into separate functionBoris Kolpackov6-21/+33
2011-02-21Cosmetic changesBoris Kolpackov1-1/+1
2011-02-21Validate connection in MySQL pool factoryBoris Kolpackov4-2/+45
This will help deal with the MySQL server closing connections after a certain period of inactivity.
2011-02-21Cosmetic changesBoris Kolpackov1-1/+1
2011-02-21Don't reuse failed connectionsBoris Kolpackov4-4/+29
If MySQL API returns an error indicating the connection is no longer usable, mark it as failed. In connection_pool_factory free failed connections instead of returning them to the pool.
2011-02-18Factor out MySQL error to exception translation into separate functionBoris Kolpackov9-127/+148
2011-02-15Add CLI as prerequisite in INSTALL-GITBoris Kolpackov1-3/+4