Skip to content


Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP


Move from c3p0 to Apache Commons DBCP? #219

overholt opened this Issue · 9 comments

6 participants



Some of us are trying to get Etherpad packaged for Fedora. One of the dependencies that we're having trouble with is c3p0. It looks like c3p0 only builds against Java 1.5 and we would like to use OpenJDK which is 1.6. I tried building c3p0 with gcj (which has GNU Classpath which is at 1.5) but ran into some issues with their javax.sql compatibility.

Is there any chance of etherpad moving to use Apache Commons DBCP instead of c3p0?


Andrew Overholt


c3p0 is LPGL, latest release was in 2007, so might anyways be dead.
DBCP is in Debian and Ubuntu

So, patches welcome... :)
Perhaps is useful in understanding the existing c3p0 code.


So you're saying you'd like help porting to DBCP? I'll see if I can drum up some help :) DBCP is in Fedora, too, FWIW.

cjb commented

Even if you get it to compile on OpenJDK (I thought I'd done so in the past..), etherpad doesn't run under OpenJDK; it crashes immediately. So, heads up on that too.


Any more details regarding the crash? For instance, what was the OpenJDK version and was it a JVM crash or some library issue?

cjb commented

Sorry, I have no details. It's easy to reproduce by compiling etherpad under Sun Java and then trying to start it using OpenJDK.

Our old FAQ entries/mailing list posts mentioned this and might well have included a paste of the error message.


It seems that c3p0 is imported in one single place in infrastructure/net.appjet.ajstdlib/sqlbase.scala: import com.mchange.v2.c3p0._;
I'll leave this to scala-literate people to judge if it's easy to replace in there or not.


@pedalpoweredsoftware Thanks, that makes it clear that DBCP is still to be avoided as the plague. BoneCP from seems to be a drop-in replacement for c3p0 and also with much better performance:
Who's up to testing BoneCP asap? Latest version 0.7 announcement:
Also in 0.7 release notes: Changed license to Apache v2.0 -- so should be painless for apache-supporters to use this one :) Packaging though?


Also, choosing BoneCP means we need another 2 packages:

@JohnMcLear JohnMcLear closed this
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Something went wrong with that request. Please try again.