I realized the other day that I need the sleep() function, which
up until this morning, Drizzle did not have, for testing the
memcached Drizzle UDFs. Well, now it does:
drizzle> select sleep(3);
+----------+
| sleep(3) |
+----------+
| 0 |
+----------+
1 row in set (3 sec)
drizzle> select sleep(0);
+----------+
| sleep(0) |
+----------+
| 0 |
+----------+
1 row in set (0 sec)
drizzle> select sleep(20);
+-----------+
| sleep(20) |
+-----------+
| 0 |
+-----------+
1 row in set (20 sec)
As you see, it returns zero, just as the MySQL sleep() function
does.
The code can be had at:
lp:~capttofu/drizzle/sleep
I’m going to be giving a talk at the PHP user group here in Portland, OR on August 11th. Details can be found here. If you’re in the Portland area please join the group and come check it out! This will be similar to the Boston MySQL Meetup group talk I gave earlier this month with Patrick, but with more focus on PHP.
There is a lot happening with Gearman right now. Last week at OSCON we received quite a bit of good feedback with the project which will certainly help direct our priorities moving forward. In the past couple weeks we’ve had the following Gearman releases:
- Gearman C Server and Library 0.9 – This added libsqlite3 and libpq (PostgreSQL) persistent queue support. Thanks to Cory Bennett for the SQLite patch!
- Gearman PHP Extension 0.5.0 – This release includes a few more functions from the C library and bug fixes. Thanks James!
- Gearman Perl XS 0.4 – This release includes a few more functions from …
I was actually exploring inotify-tools for something else, but they can also be handy for seeing what goes on below a mysqld process. inotify hooks into the filesystem handlers, and sees which files are accessed. You can then set triggers, or just display a tally over a certain period.
It has been a standard Linux kernel module since 2.6.13
(2005, wow that’s a long time ago already) and can be
used through calls or the inotify-tools (commandline). So with
the instrumentation already in the kernel, apt-get install
inotify-tools is all you need to get started.
# inotifywatch -v -t 20 -r /var/lib/mysql/* /var/lib/mysql/zabbix/* Establishing watches... Setting up watch(es) on /var/lib/mysql/mysql/user.frm OK, /var/lib/mysql/mysql/user.frm is now being watched. [...] Total of 212 watches. Finished establishing watches, now collecting …[Read more]
The latest release has a lot of great improvements that you’ll be sure to enjoy.
- ExtJS upgraded to version 3
- Host, User, Client, Alerts pages all updated to use GridPanels
- Documentation on the VMware Virtual Appliance added to docs
- More JSON responders to replace static page status events
- Login no longer has an “OK” on successful authentication
- New CSS UI theme – Slate
As usual you can download here: http://kontrollsoft.com/software-downloads
It’s been just over three months since the April 2009 MySQL Users Conference and Expo. It took a while for the files to be processed, and then uploaded to www.technocation.org, and then I found out that the online streaming was not working properly. So I started playing with things, re-encoding some videos, updating the software, but to no avail.
Just as I was about to give up I got notification that Technocation, Inc. was accepted into YouTube’s not-for-profit program, which allows movies larger than 10 minutes to be uploaded and viewed advertisement-free.
So then I had to upload the videos to YouTube and add descriptions.
So with no *further* delay, here are all the videos from the 2009 MySQL Conference and 2009 MySQL Camp:
The brief description — just the playlists:
Conference …
I ran into this little problem today; when dividing two whole
number the result MySQL gave me was nowhere near as precise as I
needed it to be. The values were truncated which caused me some
errors in my application.
Example:
mysql> select 1*0.00001;
+-----------+
| 1*0.00001 |
+-----------+
| 0.00001 |
+-----------+
Ok, that looks fine. Let's do the same thing using
division:
mysql> select 1/100000;
+----------+
| 1/100000 |
+----------+
| 0.0000 |
+----------+
Oops! What happened?
The issue is that the maximum precision of the result value
depends on the number of decimal places in the arguments. Since
the second version uses two whole numbers, the result uses the
default number of decimal places, which is 4. So you really have
to take care to make sure you're getting the precision you …
I’ve been editing a task description in our worklog:
WL#706 Add EXPLAIN support for other statements
(UPDATE/DELETE).
Currently MySQL supports EXPLAIN SELECT but there have been requests for EXPLAIN UPDATE, EXPLAIN DELETE, and so on. In fact it’s my impression that the proposition in WL#706 (transform the statement to a SELECT and then say EXPLAIN SELECT) is not what people want. But that’s okay, while a worklog is an early stage we allow simple ’solutions’ that might disappear later.
I'm pleased to announce the release of SQL Bench, the benchmark
test suite the comes standard with MySQL, now as a separate
project targeted for testing any database. I have pulled it out
as a separate project so I can modify and improve it faster. With
this release, I have successfully used it for testing both
Drizzle and MySQL. Other RDBMSs, I have yet to test.
Modifications
I modified the connection test, which part of it is to connect,
run a single query for one row, disconnect, to iterate only
20,000 times vs. 100,000 times. The reason for this is to allow
this test to reasonably test databases that use TCP sockets. When
I added Drizzle support to SQL Bench, upon running the connect
test it would fail inexplicably. After some serious testing, it
was realized that since Drizzle uses TCP sockets, even when
connecting to localhost, that the connect test would fail because
of the result of sockets being kept around in …
Image by Sebastian Bergmann via Flickr
I had a quick chat with Michael Widenius today. He is on vacation so tried to keep the call short. Essentially spoke about two topics, Oracle & an update on Maria.
The Monty Program has 15 staff now. Their focus is getting the MariaDB branch of MySQL ready for release, I understand they have a target of next month (August) for this release. The Maria storage engine has been delayed for the time being with the focus being on the branch release instead. PBXT and XtraDB will two …
[Read more]