I’ve been looking forward to getting started with LB for a while now… the Maven integration and the IntelliJ plugins had me really excited!
But when I finally got around to setting things up tonight, I was a little less enthused. A few issues that I came across:
- It was very poorly (if at all, I couldn't find it) documented on how to get started with an existing database. The videos were helpful for a high-level overview of the product, but it was nowhere to be found how to take an existing database, generate the proper changeset for it, then synchronize that existing database with the proper LB additions to register that it was in sync.
- The IntelliJ tools have a lot of light functional issues that won't fly in production. Every time I would right click on a database and try to update it with the change set I generated, it would always revert back to the database that I got the change set from. I finally tried to "drop objects" on an already empty database, but it didn't care, it dropped the objects on the database I really didn't want to drop. (So I am now downloading 2+GB of data again from stage server.) That would suck eggs in production. Another issue was that the filenames that were stored in the LB tables were absolute filesystem paths that have no relevance in a Spring tool.
- Once I did get a change list to apply to a database, half of the table names were properly upper-cased, the rest were improperly converted to lower case. There's no rhyme or reason as to why, but I am concerned about keeping them the same case because MySQL (not my choice either) has platform-dependent characteristics regarding case sensitivity. And I'm concerned about whether future table creation is going to be done with the correct case or I am just setting myself up for a world of future hurt.
- I would have liked to send more relevant information about why these problems happened and maybe some patches to consider, but the source jars were not generated and put into the central repository alongside the binaries. I would *beg* the authors to do this from now on.