I would like to get opinions or suggestions regarding embedded databases in Java. In particular I was looking at H2, HSQLDB and Derby. Have you use any of these in a production project? Do you have comment or recommendations to select one over the others?
Thanks
Edit: I am currently evaluating these options to use in our internal developments, so I don't have a specific use case in mind. One of the possible uses I am evaluating them for is a desktop application that uses the database as a local repository. At some point it synchronizes with a central repository (in this case DB2). It is a store and forward architecture. Anyway, this is just a possibility to guide your answers, Basically I’m looking for your experiences using these tools.