Well, the foundations for the Traffic Analyzer module were
finally laid today; the basic classes of the module are now up in
the SVN repository.
So far I've only constructed the classes for Unix and not
Windows, I've created a separate branch for the Windows code but
the associated directory is currently empty. Of course, there may
be source files which will end up being common to both branches,
however I don't think that maintaining a more complex directory
structure in order to have both branches share common source
files is something that's currently necessary (or something I
currently know how to do!).
So right now the Traffic Analyzer can detect packet traffic and
deconstruct packets sequentially using some clever pointer logic
and special structs; nothing new there. There are a few command
line arguments that the user can use to customize how the program
runs and I've even included the old ConfigReader class from …
I’m surprised to see so little being said about the First Discussion draft of the Affero GPL v3. I see only 9 comments as of 9PM PDT 6/13. That’s not very many.
Perhaps the reason is that the only difference is the single paragraph in Section 13 which states:
Notwithstanding any other provision of this License, if you modify the Program, your modified version must give all users interacting with it remotely through a computer network (if your version supports such interaction) an opportunity to receive the Corresponding Source of your version by providing access to copy the Corresponding Source from a network server at no charge.
Fabrizio here seems bullish on the new license and goes on to say:
Bottom line: if GPL v3 and AGPL v3 are exactly the same document and are 100% compatible, why would an open …
[Read more]MySQL AB today published a "Do's & Don'ts" summary article on the 'Top 5 Common Scale-Out Pitfalls to Avoid' -- based on the real-world experiences of the vendor's veteran professional services team. These database experts have helped countless businesses manage their 'growing pains' and be more successful with their scale-out solutions through consulting engagements. They have seen many companies fall into a few common traps when they first design their systems, only to run into performance issues once the explosive growth hits.
The full article is available here.
We live in a world full of truly lousy people. I know this based on the amount of porn pingback and trackbacks I'm getting on this blog. I don't yet know how to solve this so, for now, I'm turning those off.
I’ve just posted slides and (rather) rough presenter notes and image credits for my Age of Literate Machines presentation.
These are still draft slides. I’ll be working on an improved version in the coming weeks and months.
Many thanks to all who have sat through drafts of the talk (DES, Jen, Hilde, Markus, Monty, Rory, Tony).
[Read more]Using MEMORY tables in MySQL is very useful; they are stored in memory and they are usually not so big in order to avoid a huge utilization of RAM. They are very fast.
MEMORY tables are often used to store session user data, chat messages and to store small frames of data from a bigger table in order to achieve great performance.
But, if you use them in a replication environment, you can have some problem due to their "volatility"; MEMORY table rows are lost when the server shuts down.
If you restart a slave host for some reason, you will have empty MEMORY tables on it, while the master host will have the correct ones.
How to populate automatically MEMORY tables at slave start up copying data from master host?
We could use something like LOAD TABLE table_name FROM MASTER, but it's deprecated, so we will use something else.
I have developed a stored procedure you have to create on the …
[Read more]Using MEMORY tables in MySQL is very useful; they are stored in memory and they are usually not so big in order to avoid a huge utilization of RAM. They are very fast.
MEMORY tables are often used to store session user data, chat messages and to store small frames of data from a bigger table in order to achieve great performance.
But, if you use them in a replication environment, you can have some problem due to their “volatility”; MEMORY table rows are lost when the server shuts down.
If you restart a slave host for some reason, you will have empty MEMORY tables on it, while the master host will have the correct ones.
How to populate automatically MEMORY tables at slave start up copying data from master host?
We could use something like LOAD TABLE table_name FROM MASTER, but it’s deprecated, so we will use something else.
I have developed a stored procedure you have to create on …
[Read more]One of the challenges we sometimes have at MySQL is that our audience is very broad. We get hundreds of thousands of page views every day and the interests span a wide range. That's one of the reasons we created the Developer Zone http://www.dev.mysql.com so that it would be easy for developers to find downloads, documentation and technical articles. In effect, people who are alergic to buzzwords like ROI, TCO and CIO could bypass the home page and just stick to the technical content on the dev zone.
Earlier this week, we launched a PR campaign called the 12 Days of Scale Out on our web site in order to highlight some examples of customers who have built very large applications or web sites using MySQL, such as Booking.com, Alcatel, Wikipedia, Zimbra, etc. The content was targeted towards business …
[Read more]Build notes and Tuning tips for Solaris
lighttpd seems to be increasingly popular, so much so that netcraft has started tracking it's use on production websites. I've spent some time building, tuning and running simple performance stress tests on lighttpd 1.4.15 on Solaris and thought I'd share what I learnt.
Building lighttpd
My build of lighttpd uses the openldap library from Cool Stack. I also built and installed pcre-7.1 in /opt/coolstack using the following script :
#!/bin/sh
INSTALLDIR=/opt/coolstack
CFLAGS="-fast -xipo -xtarget=generic"
make distclean
./configure --prefix=$INSTALLDIR CFLAGS="$CFLAGS"
make
make install
…
it?s another month, so time for another connector/odbc release.
there?s already three bug fixes that have been committed to the
repository for the next release, and the changes to support
building on windows x64 should land soon.
we?re down to about 130 open bugs, about 20 less than the last release.
some of those were newly fixed, and some were closed because they
duplicated earlier problems that had already been fixed. this
release does close another bug that is nearly three years old.
one of the things i hope to get fixed for the next release is
being able to specify the default character set for the
connection. you can?t do this now, so when developers try to use
a different default character set …