It's about that time again, where we're nearing the end of a very productive development cycle. With our 2.0.3 release set to be published for download next week I'm here to give a high level look at what's in store. By the numbers, this release delivers over 30 features and enhancements, along with 160 fixes and improvements. Read on to get a bigger scoop, and go to our Developer Center to download once it's available.
The work from our SQL Team is reliably predictable in this patch, and that's a good thing when your bread & butter is about standards, conformance, and compatibility. This time around it was a matter of more functions to improve compatibility, more Date/Time functions, expanded JDBC conformance, and improved ENUM datatype support. Here's a short list from the field:
- DB-4091 ENUM datatype support improved
- DB-5103 Created date functions that support adding/subtracting a month or minute interval from a timestamp or now(). This includes new support for the standard type INTERVAL.
- DB-5293 Expanded JDBC Driver method support
- DB-4982 Provide SQL GREATEST() function
- DB-2389 : Table and Column rename is implemented
- DB-5046: Performance fixes when using BoneCP JDBC connection pool
- DB-5121: SQL REPLACE function support
- SQL enhancements to support the Drupal 7 CMS system
- JDBC enhancements to allow for a deep integration with DbVisualizer (yet to be announced)
In addition, NuoDB 2.0.3 now provides enhanced PHP support:
- DB-5450: PHP 5.5 support added for Linux
Checking in with the Core Team, the Journal is now on by default and stability should be rock-solid. They've also made a couple of bug fixes for cloud / HTTP storage, resulting in improved Amazon S3 support. There are multiple improvements for a geo-distributed environment, evidenced in some of the issues fixed for our node list facility. Over all, exhaustive upgrade and recovery testing by the team proved very fruitful. Here are some of their related fixes and improvements:
- DB-5081 Journaling on by default
- DB-5210 Journal files are platform dependent
- DB-4984 Change --max-http-connections default (S3,HDFS)
- DB-5096 Regression in the upgrade test - read timeout 5000
- DB-5181 Circular relay can result in receiving unavailable about self
There are some notable changes in our open source Migrator tool for the 2.0.3 patch. With more and more users moving their datasets to NuoDB we've responded with key compatibility improvements, for both Oracle and MySQL. A quick look will show there've been functional improvements too, providing more options and control during the migration sequence.
- DB-5021 Migrator: ENUM support provided
- DB-4909 Migrator: Allow users to insert data first, and populate indexes later. This greatly improves performance when loading data during migration.
- DB-4752 Migrator: Sequence computation moved into dump phase. This allows for a complete migration of schema and data in 2 commands. The schema command is no longer required for migration, but remains an auxiliary feature.
- DB-4913 Migrator [did not] Support Oracle Type Code 2007
- DB-5130 Migrator schema option was creating NuoDB DDL that sets timestamp default value = 'NULL' if MySQL default value = 0000-00-00
- DB-5447 Migrator wasn't pulling Oracle sequences
Our Admin Tier Team has delivered another solid round of enhancements and fixes to the new Automation Console, automation workflow, and the management layer. This work includes EC2 operational and behavioral improvements as well. Here's a list of notable changes:
- DB-5353 Auto Console: force browser cache re-load on software update
- DB-5170 User preferences in top right corner. The Automation Console now has preferences and configuration.The admin database can now be shown (disabled by default). The left-hand side menu can now be collapsed to "icon only" in order to save screen real estate.
- DB-5239 Auto Console: ability to chose different metrics. More metrics are now available under the top-right corner "Metrics" picker.
- DB-4459 Auto Console: option to include/exclude the admin db activity (DB-4455)
- DB-5032 Visual cue in Auto Console that system database is missing. If automation has not been bootstrapped (broker startup using bootstrap property) or the admin database has been shutdown, then the UI will now indicate a warning to that event.
- DB-5122 Manager: "echo all" to show all properties
- DB-4498 Synchronous quiesce missing in Java Management API. Quiesce now has synch / asynch mode and can timeout if set. As a result, the Manager will no longer wait forever. Example:
- DB-4125 NuoDB Manager should have a time-out with a warning when a command hangs. No guesswork required.
- DB-4969 Broker peering: allow peer= csv list (when running without a l/b). The "peer" property now allows a comma-separated list of peer addresses instead of just a single address. On startup, the agent/broker will iterate through the list and attempt each peer sequentially.
- DB-5433 EC2 / RH Linux requires lockfile for rc0,6d to call service stop. RedHat Linux requires a lockfile in order to perform service stop on machine restart/termination. The scripts "/etc/*.d/*nuoagent*" have been updated to use a lockfile.
- DB-5431 EC2 instance shutdown doesn't hangup agent server socket; prevents "leaving" the domain. The service config in NuoDB AMI is missing agent shutdown when the EC2 host terminates or reboots. Compare with "chkconfig | grep nuoagent".
- DB-5441 EC2 AMI doesn't register nuoagent service with chkcontrol; no agent stop on reboot/stop. The consequence is that an EC2 instance terminate leaves the Agent in the domain as the socket is not hung up. This in turn will cause new SQL connection requests being routed to a hosts that are no longer running.
- DB-5205 NuoManager agent unreachable command added. If for some reason the agent has not had a chance to terminate and leave the domain gracefully, you can use a manager command to force-leave the agent out of the domain.
We feel that, for a patch release, 2.0.3 has much more than just bug fixes and it brings a significant amount of progress to the offering. We're looking forward to GA next week and strongly encourage you to go for the download!