Showing entries 37881 to 37890 of 43779
« 10 Newer Entries | 10 Older Entries »
MySQL Replication and Slow Queries

I just filed a bug regarding slow queries executed by replication thread are not being logged to the slow query log.

This is not a big deal but it is ugly little gotcha which I think few people know about. It is especially bad if you're using tools to analyze slow query log to find what queries take up the most resources on your server - in certain configurations replication load itself may be very significant contributor.

But even if you do not, as I wrote in the bug report it is quite handy to have this information our where as query times on master and slave can be different in a lot of circumstances.

One more thing to consider - slow replication queries also identify replication lag, ie if you have query which ran 10 seconds on the slave and …

[Read more]
Good old file handling

In a heavily webbed, automated, interconnected world with most data stored on relational databases, we can sometimes forget that there are indeed many situation where you simply want to FTP a file from one place to another.

That process in itself holds many dangers as I pointed out to someone on the forum today.  Let me re-cap that post here on the blog…

Suppose your files are coming in using FTP to a local directory.

A file is being written, let’s call it FILE_20070328.txt.
Now, in advance you don’t know the size of that file. Let’s say it’s 10MB and takes 30 seconds to FTP.
In your transformation you detect this file and start working. Chances are very high that you’ll be reading an incomplete file.  (See also this technical tip on variables and file handling)

There are 2 ways to …

[Read more]
MySQL Conference & Expo 2007

Thanks to a gift from MySQL AB, I'll be attending the MySQL Conference & Expo 2007. I presented at the 2005 conference, and found the conference itself to be pretty educational. Plus the food is generally pretty good at the O'Reilly conferences. Of course the real reason people to conferences is for the swag. Now this year's PyCon had some pretty good swag; I got at least six free T-shirts and two Rubik's cubes. So top that.

angry programming

mysql doesn?t have quite the number of fancy internal applications that you might suspect, and i got frustrated when the company started to roll out a system of monthly time-off reports based on emailing around an excel spreadsheet. (to add icing to that cake, they kept sending out the excel sheet with password protection!)

last friday, i spent an afternoon cooking up this little proof-of-concept application that tracked the same information as the spreadsheet, but in tasty web format, with some ajax goodness (courtesy of prototype).

as it turns out, there was an official company tool for doing this that was in the works, but they hadn?t bothered to let anyone know it was imminent. i?m told it is …

[Read more]
MySQL Protocol

In my recent work I had to dive into the Internals of the MySQL protocol.

Most of the protocol is described in Chapter 8. MySQL Client/Server Protocol. "Most" as it documents the state of MySQL 4.1.x before it was stable. It is interesting for all developers who want to extend the mysql-server or want to write a native connector to MySQL which isn't using libmysqlclient.

Note: the protocol definition and the derived work at released under the terms of the GPL. See 8.1. Licensing Notice

Connection States

The MySQL protocol has two phases: auth and …

[Read more]
Integers in PHP, running with scissors, and portability

Until recently I thought that currently popular scripting languages, which mostly evolved over last 10 years or something, must allow for easier portability across different platforms compared to ye good olde C/C++.

After all, their development started a few decades after C, so its notorious caveats are all well-known and should be easy to avoid when designing a new language, right?

However, PHP just brought me a new definition of "portable" - and that was when working with... integers.

PHP is not able to handle unsigned integers, and converts values over 2^31 to signed. So if your IDs go slightly over 2 billion, and PHP decides to treat them as integers, you're in trouble.

Oh wait, no - that's on 32-bit platforms only! PHP int size is platform-dependent, and it seems to be 8 bytes on our 64-bit boxes. Yes, the very same ones where C/C++ int is 4 bytes, you know.

That was the easy part. It was …

[Read more]
PHP Sessions - Files vs Database Based

One may think changing PHP session handler from file based to database driven is fully transparent. In many cases it is, sometimes however it may cause some unexpected problems as happened to one of our customers.

If you use file based sessions PHP will lock session file for whole script execution duration, which means all requests from the same sessions will be serialized on PHP level, which means they also will be serialized for single user on database level. If you change to store PHP sessions in MySQL instead this effect may be no more true and you may have number of requests executing for the same session at the same time. First of course means you may have your session data damaged because you will have lost session variables update from one of the script, in addition however you may run into database related issues of modifying user profile or other user/session related data in parallel, if you do not use transactions or lock tables. …

[Read more]
Mondrian (and me) at MySQL

I am giving a talk at the MySQL user conference, April 23-26, Santa Clara, California. The talk is titled "Building Scalable OLAP Applications with Mondrian and MySQL" (slides).

When I gave a talk "Building OLAP Applications with Mondrian and MySQL" at the 2006 MySQL UC, it was my first chance to meet a lot of you in the mondrian and pentaho communities. It was great to finally put faces to email addresses. But it was frustrating that there wasn't enough time to have in-depth discussions and answer everyone's questions.

So this year we thought we'd solve that by hosting a Birds of a Feather session on Tuesday …

[Read more]
MySQL cool-aid: 40% on MySQL; EUR$1+ million deal signed

Its interesting to note some happenings in the MySQL world of late, that might be of interest to people in the database world, and those following open source software development and business models.

40% of developers say they use MySQL, according to the Evans Data Group. This is not including pilot projects, but real production use in corporate environments. A lot of MySQL’s popularity is generally attributed to the LAMP stack, though I see a change. Look at all the Ruby on Rails projects out there. They most definitely run on a MySQL backend. A good example are the products from 37signals, makers of the rather new, and cool tool, Highrise - they’re Ruby on Rails, and MySQL powered.

Is this 40% statistic …

[Read more]
Hello Disruption, Goodbye Infoworld!

 

After 29 years, InfoWorld is giving up it's print edition and going to a web-only publication model.  It's hard to believe it's been around that long.  I remember reading InfoWorld when I was in University back in the early 1980s.  Back then, the only way to know what was new in technology was through magazines like InfoWorld, ComputerWorld, PC Week, PC Magazine et al.  Over the years, InfoWorld has had some of the greatest writers and editorial staff in the industry.  And they were able to morph on occasion from tabloid to glossy magazine (and back) a couple of times, adding new columnists to focus on new techologies to stay current.  But it's been apparent for a while that InfoWorld's print edition was …

[Read more]
Showing entries 37881 to 37890 of 43779
« 10 Newer Entries | 10 Older Entries »