We have been looking for a new standard method for serializing
objects from the server. Schemas, Replication Events, Tables,
etc... all for one reason or another have to be serialized at
some juncture at the moment. Each type has its own
method/language which makes it a bit of a pain to deal with in
the server.
Worse?
Few of the formats are upgradable. You end up with all sorts of
incompatibilities that over time have become a real PIA to deal
with.
Introducing Google's Protocol Buffers:
http://code.google.com/apis/protocolbuffers/
In short, this buys us an upgradable format and a lot less code.
It also makes it much simple to write trivial little tools to
pull apart objects from the server.
I pushed the first bit of this into Drizzle last night, and
picked a low hanging piece of fruit, the …
Just on the train after my morning tutorial on MySQL Replication
and Backup Strategies.
I had 10 attendees, and we had a very good interactive session
with many questions and discussions.
The attendees tell me they liked it.
I've rented a car here for the week, but just parking at a
station outside the city to avoid parking problems.
Also allowed me to explore the area a bit more, including the fab
wine regions (McLaren Vale, Barossa, etc).
Tonight is the LinuxSA meeting (a week earlier), and I'll be
doing a talk there on MySQL and Drizzle.
Maatkit version 2152 is ready for download. This release is also known as the “is this project really alive?” release. We thought we should delay until MySQL released a new Community Server version. Just kidding — it has nothing to do with that.
This release is also very significant in that it’s the first one that has large code contributions by someone other than myself. As you may know, Percona (my employer) has hired the very talented Daniel Nichter, author of mysqlreport and other goodies, to help with Maatkit. So far it is a match made in heaven, and Daniel did …
[Read more]The Skoll Client retrieves a set of commands from the Skoll Server to compile and test MySQL; these commands are UNIX shell commands. My Google Summer of Code project is to work on the Java Skoll Client, I spent a great deal of time and effort getting these shell commands to run well in Java. Running shell commands in Java is not always straightforward, here are some techniques I learned to get the job done.
Use Java's ProcessBuilder class instead of Runtime class for Java 5.0+ projects. There are two reasons. First, ProcessBuilder has redirectErrorStream() method that automatically merges the standard output and standard error together so the output of a command would make more sense and more importantly the process won't freeze if the developer doesn't clear the error output stream. Second, the environment() method returns a nice Map the developer can use to manipulate the environment in which the command should run. Unfortunately, I must …
[Read more]KEY ACCOMPLISHMENTS LAST WEEK
- Finished per test runtime information collection modifications.
- Collected and analyzed per test runtime information for a few suspicious configurations and tests.
- Refactored and cleaned up source code.
KEY TASKS THAT STALLED LAST WEEK
- None
KEY CONCERNS
- None
TASKS IN THE UPCOMING WEEK
- Refactor and clean up source code.
- Update JavaDoc.
Problem Statement : 386 GB of MySQL 5.0 Compressed MyISAM tables (Merge engine used) need to be migrated to MySQL 5.1 Compressed/Partitioned tables. Also we had to add a few new columns and change the datatype of few existing columns.
Initial plan : Setup the MySQL 5.1 database with the schema with partitioning to which the data needs to be migrated and then run scripts to copy the .MYD ,.MYI and .frm files to the 5.1 database. Disable the keys using “Alter table <> disable keys“. Then migrate the data using the insert into newtable select * from old table. Then to compress the tables run myisampack and myisamchk.
As per plan we started the migration process. The plan worked perfectly though a bit on the slower side for most of the tables. For few of the tables, the import process kept dragging on and on. It was well past a week since the import was started and the system …
[Read more]Malaysian Airlines has impressed me, yet again. Last week, in The Star, they reported that Sharul Isahak, a MAS employee, has helped save the airlines close to RM70 million (about USD$21 million), thanks to his use of open source software.
The software is meant to help airline maintenance, i.e. to keep track of parts and records of maintenance works. The web-based solution, is E-Promis (read the blog entry, its pretty interesting, as he takes you through the planning stages - it also seems like he’s still the only developer).
?This meant looking at open-source solutions. Instead of platforms such as Microsoft or Sun, we chose LAMP (Linux, Apache, MySQL and PHP)?
I couldn’t help but grin …
[Read more]A concise compilation of today's news of interest to TheAquarium readers:
|
Nazrul provides Links on GFv2 Monitoring, including GF-bundled tools, other Sun and 3rd party tools, documentation and web sites. Arun documents how to start the MySQL and GlassFish Bundle, with detailed steps and screenshots. Dave, writing in the SocialSite Blog, provides an Overview of the Apache Shindig REST … |
Maatkit version 2152 is ready for download. This release is also known as the “is this project really alive?” release. We thought we should delay until MySQL released a new Community Server version. Just kidding – it has nothing to do with that.
At OSCON, Sun had a huge booth. I mentioned that before, and I was part of the show. During booth opening hours, members of all Sun communities (Open Solaris, Glassfish, OpenJDK, MySQL) addressed the audience with technical presentations.
I was very impressed by these two booklets that were given away to whomever wanted them. They are short, well written, with the sort of practical information that a beginner wants to find immediately.
It's nice to hold them, but books are heavy, especially if you are traveling 6,000 miles with hand luggage only. So it's very nice to find them in the OpenSolaris site.
[Read more]