Pierre van Rooden wrote:
I was planning to close the call, I didn't get around to it.
In general, the suggestion is that a freestanding datasource
implementation is still required. In that sense, the call did not pass.
However, people do want the code cleaned up. I looked into this and I
think it can be drastically simplified, even if we do not use a 3rd
party jar.
How good are you in concurrent programming? Looking at the cvs history
of MultiPool.java we all are not very good at it. And if you are going
to fix connection pooling then you should also take a look at
protected Connection getActiveConnection() throws SQLException {
if (activeConnection != null) {
if (factory.supportsTransactions() && inTransaction) {
return activeConnection;
} else {
releaseActiveConnection();
}
}
activeConnection = dataSource.getConnection();
// set autocommit to true
activeConnection.setAutoCommit(true);
return activeConnection;
}
I saw it last week and don't have a clue yet how to fix it the right
way. Fortunately, transaction support is turned off for all databases.
Maybe I will fix it when I add view support.
Another improvement will be to add the datasource documentation to
mmbaseroot.xml.
Sounds a good idea.
Nico
_______________________________________________
Developers mailing list
[email protected]
http://lists.mmbase.org/mailman/listinfo/developers