dblxAdmin - 2012-06-16

The code changes for DBLX 1.5 are complete and testing is in progress.
A lot of new tests had to be written to go with all the datatype changes, so we are a little behind on those tasks but should make July 15 as planned.

Implementing the datatype support was fraught with interesting surprises.

Some things appeared simple, but turned out to be poor-performing. We figured for the integer datatype that we could cast the value to an int and if it didn't throw we were golden. It actually worked that way but the performance was a little scary. Decimal and Double had the performance of integer, but had the added complexity of dealing with precision and scale. We had to find a faster way to check numbers and ultimately did.

Other things which were assumed to be simple turned out to be much more complex that anticipated. You would think that dealing with the LIKE comparator in a WHERE clause wouldn't be too bad, right? No, it was a fuckin' nightmare. Each percent sign in the value of the LIKE statement means '1 or more wildcard characters'. It was a killer and we bent the crap out of the code trying to find a decent solution.
(And yes, we tried regex but it turned out to be a bit of a pig. Or, should I say we found a better and faster way.)

With all the new features in 1.5 the codebase has grown about 30%. Our JAR for the server has ballooned up to almost 300k. It used to be around 190k. We are getting fat already and its only a year out of the gate.

More later.