Showing entries 29186 to 29195 of 44069
« 10 Newer Entries | 10 Older Entries »
Celebrating a year of MySQL and Sun

About one year ago, 400 MySQL employees were in Orlando, FL, for their company meeting. Their main worry was how to improve the business in view of the inevitable IPO that was coming soon. Nobody knew when, but there was expectation for Mårten Mickos keynote, on January 16, 2008, at 8:00. Possibly, everybody thought, he will announce a date for going public.

And public we went, but not the way we thought.

The evening before, I was among a group of about 25 people who were summoned to Mårten's suite, without a specific reason. At about 10pm, Mårten announced the $1B news, and for many of us there are only fuzzy memories after that. We weren't allowed to leave the suite before signing a NDA, to keep the news quiet until the following day at 8am.

Thus, having slept very little, with conflicting thoughts, I met my co-workers, and I couldn't tell anyone what was about to happen. We lined up for the keynote hall to open, and …

[Read more]
GDB: auto-stacktrace

While developing mysql-proxy I sometimes have to step-by-step refactoring that usually result in unstable code for a while until the unit-tests are happy again.

When a unit-test fails I usually use gdb as a wrapper and let it create a stack-trace for me:

$ gdb --command=backtrace.gdb --args /path/to/my/testcase

The --command option is used to automate gdb:

run
thread apply all bt
quit

If the test finishes successfully, gdb will just quit, but on error we will get a nice, all-threads stack-trace.

In the end it looks like:

$ gdb --command=backtrace.gdb --args .../tests/unit/t_network_io
...
Program received signal SIGINT, Interrupt.
0x909f43ae in __semwait_signal ()

Thread 2 (process 49948 thread 0x1003):
#0  0x90a1d906 in kevent ()
#1  0x0006ee40 in kq_dispatch ()
#2  0x00062b26 in event_base_loop ()
#3  0x0000781a in mock_server (_udata=0x907dd0) at …
[Read more]
Fix of InnoDB/XtraDB scalability of rollback segment

Recently I wrote about InnoDB scalability on 24-core box, and we made research of scalability problems in sysbench write workload (benchmark emulates intensive insert/delete queries). By our results the problem is in concurrency on rollback segment, which by default is single and all transactions are serialized accessing to segment.
Fortunately InnoDB internally has mechanism to support multiple rollback segments - and Yasufumi just made patch to enable it.

I rerun benchmarks on different server (Dell PowerEdge R900, 16-way Intel Xeon, 32GB of RAM, RAID 10 on 8 disks) to compare mysql-5.1.30-XtraDB-1.0.2-pre-release3 with default (1) and 16 rollback segments.

For …

[Read more]
Installing PowerDNS (With MySQL Backend) And Poweradmin On Debian Etch

Installing PowerDNS (With MySQL Backend) And Poweradmin On Debian Etch

This article shows how you can install the PowerDNS nameserver (with MySQL backend) and the Poweradmin control panel for PowerDNS on a Debian Etch system. PowerDNS is a high-performance, authoritative-only nameserver - in the setup described here it will read the DNS records from a MySQL database (similar to MyDNS), although other backends such as PostgreSQL are supported as well. Poweradmin is a web-based control panel for PowerDNS.

Caching and Actually Speeding Things Up

Image by Peter Forret via Flickr

I've ran into many people throughout my career that were under the impression that caching is a cure for cancer, world hunger and global warming. I myself often fall pray to the "just add more memory" approach for solving problems.
Some 5 years ago, while I was working with ASP classic and VB 6 (yes, you are allowed to chuckle now) on my online movie collection, I came up with the idea that nothing actually beats a flat and pre-processed HTML file for speed. I mean, this may seem obvious and no matter how many times I tried to add cache and do all sorts of tricks, nothing would beat a static file. The problem here is that when I suggest this sort of solution, people would almost always answer that "well, we have caching anyway" and that …

[Read more]
New interesting open Source releases

In case you haven't noticed them yet ..
MySQL Proxy has a new release and moved it's public repo to Launchpad.

(Still Launchpad isn't open source yet .. a matter of time .. but in the meanwhile Jira and Confluence are sadly gaining adoption in the market)

In the devministration area there is a new Puppet module that automagically populates puppet managed machines in Zenoss , I've seen different people using Puppet to populate their Nagios configs, but adding Zenoss to the list is new.. so when will we see the Zabbix and Hyperic plugins ?

Oh yes.. and then there is Chef

MySQL Native Driver for PHP, mysqlnd

In order to communicate with the MySQL database server from a PHP application, ext/mysql, ext/mysqli and the PDO MYSQL driver rely on the MySQL client library, libmysql - that has the required implementation for the client-server protocol. The MySQL native driver for PHP (will simply be referred as mysqlnd from this point), is an additional, alternative way to connect from PHP 5 and PHP 6 to the MySQL Server 4.1 or later versions. mysqlnd is a replacement for the MySQL client library, libmysql; and it is tightly integrated into PHP starting with the release of PHP 5.3. That is, from PHP 5.3 onwards the developers can choose between libmysql and mysqlnd when using mysql, mysqli or PDO_MySQL extensions to connect to the MySQL server 4.1 or newer. Due to the tight integration into PHP 5.3 (and later), mysqlnd eliminates the dependency on the MySQL client programming support when the database extension(s) and the database …

[Read more]
Managing a Bestseller

There are a couple of bookstores in my neighborhood. They could not be more different from one another.

The first is known to focus on best seller lists, to promote popular books, and use displays and traditional retail techniques to drive business. They seem to do well, year in, year out. The other bookstore is more of a community treasure, beloved by the neighborhood, with a focus on the (thoughtful) insights of their staff. Those insights are delivered via small note cards appended to shelving throughout the store, where books are displayed alphabetically, with library-like neutrality.

The first store is very market focused, changes with the season, and seems to be quite succesful. The latter store, beloved though it may be, struggles to stay in business.

Now you might consider that an awkward …

[Read more]
MySQL Native Driver for PHP, mysqlnd

In order to communicate with the MySQL database server from a PHP application, ext/mysql, ext/mysqli and the PDO MYSQL driver rely on the MySQL client library, libmysql - that has the required implementation for the client-server protocol. The MySQL native driver for PHP (will simply be referred as mysqlnd from this point), is an additional, alternative way to connect from PHP 5 and PHP 6 to the MySQL Server 4.1 or later versions. mysqlnd is a replacement for the MySQL client library, libmysql; and it is tightly integrated into PHP starting with the release of PHP 5.3. That is, from PHP 5.3 onwards the developers can choose between libmysql and mysqlnd when using mysql, mysqli or PDO_MySQL extensions to connect to the MySQL server 4.1 or newer. Due to the tight integration into PHP 5.3 (and later), mysqlnd eliminates the dependency on the MySQL client programming support when the database extension(s) and the database …

[Read more]
MySQL Native Driver for PHP, mysqlnd

In order to communicate with the MySQL database server from a PHP application, ext/mysql, ext/mysqli and the PDO MYSQL driver rely on the MySQL client library, libmysql - that has the required implementation for the client-server protocol. The MySQL native driver for PHP (will simply be referred as mysqlnd from this point), is an additional, alternative way to connect from PHP 5 and PHP 6 to the MySQL Server 4.1 or later versions. mysqlnd is a replacement for the MySQL client library, libmysql; and it is tightly integrated into PHP starting with the release of PHP 5.3. That is, from PHP 5.3 onwards the developers can choose between libmysql and mysqlnd when using mysql, mysqli or PDO_MySQL extensions to connect to the MySQL server 4.1 or newer. Due to the tight integration into PHP 5.3 (and later), mysqlnd eliminates the dependency on the MySQL client programming support when the database extension(s) and the database …

[Read more]
Showing entries 29186 to 29195 of 44069
« 10 Newer Entries | 10 Older Entries »