Earlier this week I delivered a presentation at OSCON 2006 entitled "Making Sales While Making Friends: Lessons Learned from Open Source Businesses." I've been involved with commercial open source since 1998, and have learned a lot over the years (including how to fail spectacularly and slightly more gracefully). I'm in the middle of a string of successes, though, and figured now was the time to pretend to know-it-all. You can view my OSCON 2006 presentation here. It was an extension of some JBoss analysis I did recently, as well as an attempt to pass on some of the lessons I've learned so that the next round of open source …
[Read more]Damian Conway is giving the funniest public flogging I have ever seen. He is single-handedly kicking the ass of Web 2.0, Sxip, patents, patent vulture firms, snake oil crypto, Microsoft, Google, r0ml and all the rest of us all at the same time.
Great quotes include:
- We have a patent on replacing the letter in a name with x, but still pronouncing it the same way.
- Every time you read the name Microsoft, you will see a kitten. We call it “Pavlovian Marketing”
- We thought that we might call it … firefly, fireangel, firebuffy. Then it became obvious - the new browser is called FireWhedon.
I sure hope that O’Reilly recorded this session.
Update 1
I just registered cxap.{biz,net,org} - now to go ask Damian what he would …
[Read more]
Since it is two weeks ago since my last post, I thought it would
be a good idea to give a quick update on the development
status.
At present, I've tackled all include and linking problems I faced
(C++ is rather new to me). The insertion interface is ready, and
the API for clients and sensors is near completion.
Last things remaining are the selection interface, an example
client and an example sensor.
In a couple of days I hope to publish a package containing the
first version.
Blog: http://sqlbusrt.blogspot.com/
Project website: http://sqlbusrt.sourceforge.net/
This is the first in a series of articles I?ll write on how to use innotop, the MySQL and InnoDB monitor I?m developing. This article explains how to install innotop.
I'm again returning to InnoDB scalability and related bug
#15815 as it hurts many users and customers using multi-cpu
servers.
Short intro into problem:
On 4-CPU box 1 thread executes full-table scan select query for 8
sec,
but with 4 threads - each thread executes query for 240
sec.
It is very strange as threads use only SELECT queries and ideally
there should be no
any problem in concurrent enviroment, especially for CPU-bound
workload.
I did the profiling which show the problem is with "buffer pool"
mutex, which protects innodb_buffer_pool.
In details, for each scanned row InnoDB calls block_get /
block_release functions
which aquire/release the block related to the current row. And
the problem functions
block_get / block_release use
mutex_lock(buffer_pool_mutex) / …
Just a quick reminder that the MySQL BoF is tonight from 8pm to 9pm in room D135. We'll have refreshments and you'll get to talk with the MySQL developers and have a good time. It probably won't be as crazy of a time as Monday's MySQL reception was... but nevertheless, come join us for a good chat.
trying to find places where people talk about using python, ruby,
and php with mysql has been a bit of a challenge.
the problem on the php side is that php forum on
forums.mysql.com is so filled with pre-beginner-level
questions that it?s barely worth it for me to spend my time
digging through it.
for python, the python forum on forums.mysql.com is nearly a
ghost town. the forums for the mysql-python project seem slightly
active, but the sourceforge forum interface is just bad. (not
that any web-based forum isn?t starting from a bad place.) the
db-sig mail archives also have some interesting
discussions.
for ruby, the …
Here are the slides from my OSCON 2006 talk about the new features of MySQL Replication. Enjoy.
Lars Thalmann: Future of MySQL Replication
If you are at OSCON, don’t forget the MySQL BOF at 8pm tonight.
Here's a fun little performance tweak you can use to increase the throughput of your MySQL slave boxes.
MySQL slave replication is single threaded when it comes to running SQL. If you have a number of clients performing INSERTs at the same time on a master server these are serialized and replayed on your slaves. The master has an IO advantage in that the controller can batch operations (especially on SCSI and RAID controllers) and generally perform more intelligent IO which the slaves aren't capable of handling. Apparently this is slated to be fixed in MySQL 5.1 but I'm not currently aware of the details.
Rewriting your UPDATE/INSERTS to use ON DUPLICATE KEY UPDATE can allow you take individual statements and rewrite them. For example you can do:
INSERT INTO FOO (ID, BAR) VALUES(1,2),(3,4) ON DUPLICATE KEY UPDATE BAR=VALUES(BAR)
Instead of issuing two individual INSERT or UPDATE statements.
Here's the …
[Read more]This is the first in a series of articles I’ll write on how to use innotop, the MySQL and InnoDB monitor I’m developing. This article explains how to install innotop. Note: this article is outdated now. Please see the innotop homepage for updated installation instructions and download options.