If you were to measure MySQL’s “loadavg,” how would you do it? The following metric (in pseudocode) is borrowed from Trevor Price at Aggregate Knowledge. It’s a way to calculate average query response time. What do you think of it? $start = microtime(); $status1 = SHOW GLOBAL STATUS LIKE Questions; for ( 1 .. 100 ) { $num_running += SELECT COUNT(*) FROM SHOW PROCESSLIST WHERE Command = Query; } $time = microtime() - $start; return 0 unless $time; $status2 = SHOW GLOBAL STATUS LIKE Questions; $qps = ($status2 - $status1) / $time; return 0 unless $qps; return ($num_running / 100) / $qps; If you do the dimensional analysis, if I’m not mistaken, it works.
|
If you hear a distant rumble in the air, it could be either Dups testing his new mountaineering gear, or, more likely, MySQL 5.1-GA seeding to the mirrors. We promised that it would come soon, and it's coming. All internal QA automated tests were passed, a batch of additional manual tests with the packaged binaries (called "smoke tests" internally) were performed to make sure that no embarrassing errors were left, and now the train of bits is traveling to the mirrors. Once the mirrors are loaded, expect the announcement, within a few days. |
I had a very interesting conversation on the phone with
Jonas
Oreland today (he also blogged about it on his blog at
http://jonasoreland.blogspot.com).
There is a lot of interesting features coming up in MySQL
Cluster
version 6.4. Online Add Node is one of those, which can be
done
without any downtime and even with almost no additional
memory
needed other than the memory in the new machines added into
the
cluster. This is a feature I started thinking almost 10 years
ago
so it's nice to see the fourth version of the solution actually
be
implemented and it's a really neat solution to the problem,
definitely fitting the word innovative.
The next interesting feature is to use a more efficient
protocol
for handling large operations towards the data nodes. This makes
it
use less bits …
GreenSQL is a database firewall used to protect database from SQL injection attacks. New release fixes a number of critical bugs. We recommend all users to upgrade.
This release includes a number of pre-build packages of popular operating systems. We supply packages for: CentOS, openSUSE, Fedora, Ubuntu, Debian.
List of changes:
1. Code optimization.
2. Minor management bugs were fixes.
3. New MySQL patterns and commands added.
4. A number of risk matrix calculation bugs were fixed.
5. Debian package was enhanced. A lot of bugs were fixed.
In addition to greensq-fw application we released new version of greensql-console management tool. New version contains a number bug fixes.
You can get the latest application version using the following
url:
http://www.greensql.net/download
Application installation …
[Read more]SmugMug wins Best Design at The Crunchies 2007 by Luca Filigheddu Photography
I loved the idea behind The Crunchies even before we won for Best Design last year so I’m glad to see their triumphant return. And I see that nominations are open for 2008!
It looks like we’re probably eligible for a number of categories, but even if you don’t think we’re worthy, please go nominate your favorite startups. It really means a lot to the teams that work on these companies. Nothing like a little validation for all of our hard work…
…
[Read more]Well… nearly any engine.
I have a plan forming in my head to add some hooks to engines to help with creating temporary tables (the ones created while executing a query, not ones created during ALTER TABLE).
Currently, if you ALTER TABLE and we require a temporary table, it’s still database.table but we generate a table name that’s small, unique and begins with “#sql”.
I’ve changed some of the handler interface to accept two strings (database name, table name) instead of one “path” that may (or may not) end in “.FRM” and may (or may not) begin with “./” and may (or may not) use the “/” separator between database and table name (hint: on win32, it’s sometimes “\”).
So ha_delete_table is now: ha_delete_table(db, table_name). Sanity!
(this has the downside of being a incompatible change that doesn’t break the build as there seems to be no way in C++ to say “derived …
[Read more]Hi all,
Today I'd like to start a blog series in which I highlight Web application tutorials for NetBeans 6.5. A few changes have been made to tutorials, among which is the featuring of MySQL as the database of choice.
This first entry in the series will cover the tutorial, "Creating an Ajax Autocompletion Text Field with Dynamic Faces", which is based on a NetBeans Community Docs tutorial by Bilal Ahamed.
This tutorial demonstrates the usage of the Woodstock JSF 1.2 Text Field component with Ajax functionality provided by the Project Dynamic Faces component library. Dynamic Faces, also known as POJC (Plain Old JavaServer Faces Components), are an extension to JavaServer Faces technology that lets you easily implement Ajax functionality. In particular, …
[Read more]They are wrong.
Misleading at best.
Reworking parts of Drizzle (which came directly from MySQL) it can get painfully obvious. Things like “afaiu” and “???” appear in more than one place (that is if the comment isn’t just obviously wrong).
A comment merely states what one person thought the code did at some point in the past. It has no relation to what the code actually does now.
It has not hit the MySQL DevZone Frontpage yet, but I just finished an interview with Adam Donnison, one of our web gurus behind the mysql.com web site.
Adam talks about what his work environment looks like, his experiences with MySQL 5.1 on the MySQL web sites and why he enjoys working for a virtual organization like ours. Enjoy!
It has not hit the MySQL DevZone Frontpage yet, but I just finished an interview with Adam Donnison, one of our web gurus behind the mysql.com web site.
Adam talks about what his work environment looks like, his experiences with MySQL 5.1 on the MySQL web sites and why he enjoys working for a virtual organization like ours. Enjoy!