Sun's acquisition and integration of MySQL was one of the biggest
stories of the year. But what's next? READ MORE
jHeidi Alpha 4 has been released and now supports Oracle
databases! Basic Oracle browsing support has been implemented
along side of the existing MySQL support to allow seamless
browsing between the two.
In future releases, additional functionality similar to HeidiSQL
MySQL features will be implemented.
jHeidi Alpha 4 is only available from http://jheidi.com/ and
not through the auto update process currently.
Today we announce release 1.0.2-2 of our XtraDB storage engine.
Here is a list of enhancements:
- split-buffer_pool_mutex
The patch splits global InnoDB buffer_pool mutex into several and eliminates waitings on flush IO and mutex when there is no enough free buffers. It helps if you have performance drops when data does not fit in memory.
InnoDB has a concurrent transaction limit of 1024 because in the standard InnoDB the number of undo slots is fixed value. This patch expands the maximum number of undo slots to 4072 and allows better utilizing modern hardware. (Thank …
[Read more]« Post 2 | This is the 3rd post in my MoFo Futures 2009 blog series | Post 4 »
“As for the future, your task is not to foresee it, but to enable it.” — Antoine de Saint-Exupéry
I like beginnings. This is a constant. In primary school, I tried to re-invent arithmetic. My D&D characters were obsessively re-rolled and scrapped. On various computers, I’d start my games of Civilization over and over. I’d hope that if …
[Read more]Sometimes one has weird ideas, or am I the only one? - This specific one is at least a year old, now, during the Christmas days, waiting for New Year's Eve I had the time and mood to finally try it out: MySQL 5.1 has a plugin interface to easily add storage engines. PHP can easily embedded into other applications. So why not combine these two things? - Writing a MySQL Storage Engine which reads data by calling a PHP script.
Let's start with a simple example first:
<?phpfunction create_table($table, $data) {
return true;
}
function open_table($table) {
…
Sun has invited me to showcase Maatkit at the dot-org pavilion at the upcoming MySQL Conference and Expo 2009. At this time it’s really hard to say what I’ll be demoing! Development on Maatkit is accelerating and I don’t look for that to change, so who knows what we’ll have done by then. I’ll see you there.
I've created a Twitter for Drizzle at http://twitter.com/drizzlebugs
Follow it for announcements, bugs reports, and other Drizzle
related stuff
Ok this isn’t very timely reporting, but about two weeks ago
Batched Key Access feature has been pushed into MySQL 6.0.
You can get it from the bazaar repo now (bzr branch
lp:mysql-server/6.0
), or wait several more weeks till
MySQL 6.0.9 is released and get it from there.
Batched Key Access in a nutshell
BKA is about accessing tables in batches when running nested loop joins. The benefits of batching table accesses are that
- “Remote” engines save on number of roundtrips
- Disk-based engines do reads in disk order instead of randomly probing the table, which allows to be easier on disk cache and take advantage of prefetching
Batched Key Access only works if the used storage engine supports it. At the moment there is support for MyISAM, InnoDB, Maria, Falcon (these are disk-based) and NDB (this one is remote) engines.
Documentation
At the moment …
[Read more]One of our customers gave me a chance to run some benchmarks on 24-core (intel cpu based) server, and I could not miss it and ran few CPU-bound tasks there.
The goal of benchmarks was investigation of InnoDB-plugin and XtraDB scalability in CPU-bound load.
CPU specification:
PLAIN TEXT CODE:
- processor : 23
- vendor_id : GenuineIntel
- cpu family : 6
- model : 29
- model name : Intel(R) Xeon(R) CPU E7450 @ 2.40GHz
- stepping : 1
- cpu MHz : 2394.011
- cache size …
The other day, a client mentioned they were getting strange
results when running ALTER TABLE
. The episode
involved modifying an existing primary key to add an
auto_increment
primary key
: it was
“shifting” values. Say what?!
As it turns out, it was a very special value getting changed:
zero
. Some fiddling revealed the underlying reason.
Care to join me?
To understand what’s going on, follow the example below as we start with an empty database, create a table and insert a few rows:
mysql> use test; Database changed mysql> show tables; Empty set (0.00 sec) mysql> create table test_table (id int not null primary key) engine=innodb; Query OK, 0 rows affected (0.01 sec) mysql> desc test_table; +-------+---------+------+-----+---------+-------+ | Field | Type | Null | Key | Default | Extra | +-------+---------+------+-----+---------+-------+ | id | …[Read more]