November 29, 2007

Packing for company meeting in Egypt

Our company, Percona is even more Virtual than MySQL AB - we have no offices and 100% of staff members work out of their homes (or traveling, onsite with customers etc). We also probably have just couple of cities where more than one Employee lives.

Working as a virtual company has a lot of benefits both for company and employee - office expenses savings, saving time spent commuting, flexible work time, access to more talents but it also has challenges as we typically able to communicate more efficiently with people we personally met and there are also many things which are better made or discussed in the groups. While working for MySQL I learned the great solution to this problem is periodic meetings - company wide or group wide organized both for sake of working together as well as team building as having fun together.

So we’re having first company wide meeting at Egypt next week leaving this on Friday and returning back in a week.
Similary to early MySQL practice we have invited wifes and families to come and so there would be about 20 people attending.

We’re planning intensive working schedule consisting of project reports, topic discussions, training, brainstorming, performance reviews as well as intensive schedule of excursions, tanning, diving and eating out.

We tried to ensure we have good Internet connection at the Hotel but it is hard to be 100% sure, especially in place like Egypt so not everyone from Consulting Team goes - Alexey Kovyrin stays to take care of Urgent customer issues. Though he had nice vacation at Caribbeans a week ago. Some other people are staying as well because either they did not work out their Passport issues in time or simply joined us too late in trip organization process.

Why Egypt ? There are few reasons. First we wanted to go some warm place, which is always appreciated during Winter by people living in cold locations. This makes Egypt obvious choice at this time of year especially if you’re flying out of Europe and on the Budget. Americans has got Mexico, Caribbean and Hawaii but there is not much inexpensive winter locations available for Europe.

Second reason for location choice is price. Egypt is not overly expensive destination and we do not have a huge budget to waste, especially as we’re self financing and growing company at the same time.

Third reason is Visas - being small company very light on admin personal we did not want to go to the place which requires complex visa application process, which pretty much removed most of Europe from the list which requires Russians, Ukrainians, Belorussians to get a visa.

In general trip organization for such distributed company was a tricky process and we spent more time (and money) on it when expected and now keep fingers crossed hoping Flight, Accommodation, Internet, Weather will all work out well.

I’ll write more on this as we get back to see how well we were able to match our ambitious plans.


Entry posted by peter |
4 comments

Add to: delicious | digg | reddit | netscape | Google Bookmarks

Related Posts

(Slides from Egypt talks) (Back from company meeting in Hurghada, Egypt) (Going to MySQL Developers conference in Heidelberg) (How to clear bad press from search engine results) (Company Name = Quality Jobs

November 28, 2007

Another Reason to Attend DevTeach

DevTeach is one of the very fun conferences I speak at regularly, based in Canada. It is small, intimate, attracks some great speakers, and has support from Microsoft. There has long been plenty of good reasons to attend, as indicated by its motto, training you just can’t get any other way.

But now there is another reason: Beer! I’m blown away, but during the afternoon break they set out beer. And none of the 3% stuff either, this is 5%.

So it should be an interesting afternoon of sessions. Thank heavens I did my only session today right after lunch and before the alcohol flowed! Beer and SQL Server encryption just don’t mix.

Now, if I only liked beer…. Oh well.

Related Posts

(Tuesday at DevTeach) (Is Vista Not Ready for Laptops?) (Mysql Goes Eastward, Starts Japanese Operations, Comes To …) (Bootstrapping VB) (MySQL Goes Eastward, Starts Japanese Operations, Comes To LinuxAsia

November 27, 2007

New robots.txt commands: make sure that Google can index your site

It seems that Google is currently experimenting with new robots.txt commands. If your robots.txt file accidentally contains one of the new commands, it might be that your robots.txt file tells Google to go away.

Related Posts

(New features in Google Sitemaps) (The importance of robots.txt) (Does Google read your CSS files?) (Does Google think that your web site is spam?) (Google’s new web page spider

November 26, 2007

Data Recovery Toolkit for InnoDB Version 0.1 Released

As Peter mentioned in one of previous posts, we’ve done huge work developing robust strategies of InnoDB data recovery to provide our customers effective data recovery services and one of major parts of these strategies is our toolkit for InnoDB data recovery. Today I’m proud to announce its first public release which was used to help some of our customers to recover 95-100% of their deleted data.

This release already has a pretty decent set of features:

  • Supports both REDUNDANT (pre mysql 5.0) and COMPACT (mysql 5.0+) versions of tablespaces
  • Works with single tablespaces and file-per-table tablespaces
  • Able to recover data even when processed InnoDB page has been reassigned to another table and/or was partially destroyed
  • Supports all MySQL data types except BLOBs, SETs and BITs (will be implemented in next releases)
  • Has really great set of data filters to define data ranges (for numbers), field lengths (for variable length fields), character sets (for strings), date periods (for dates), etc.
  • Shipped with easy to use tool which could be used to create innodb table definitions based on CREATE TABLE clauses, so you don’t need to write table definitions yourself - you just need to add data filters and get your data back (well, in most of the cases)
  • Results are presented in CSV file format which could be used with MySQL’s LOAD DATA function

So, if you intrigued enough and would like to check it out, welcome to Google Code page of the project where you can find latest version of the toolset code and more links to information resources related to InnoDB data structures and recovery procedures.


Entry posted by Alexey Kovyrin |
One comment

Add to: delicious | digg | reddit | netscape | Google Bookmarks

Related Posts

(Magic Innodb Recovery self healing) (Innodb Second Start prevention bug ?) (Innodb Recovery Update - The tricks what failed.) (Innodb crash recovery update) (Disaster Recovery: Simplify File Recovery with Data Protection Manager

November 25, 2007

Slides from Zurich talk are now posted

I have now posted slides for the talk I gave in Zurich last week in MySQL Performance Presentations section.

That was fun talk and fun trip in general. Thank you for inviting.


Entry posted by peter |
No comment

Add to: delicious | digg | reddit | netscape | Google Bookmarks

Related Posts

(Giving a talk in Zurich) (Slides from Egypt talks) (Lang .NET 2006 talk posted) (Landscape of Transactional Storage Engines for MySQL) (Back from RIT2007

November 22, 2007

Pitfall of proxying HTTP requests through Lighttpd

Recently I had a case with a web server farm where a random node went down every few minutes. I don’t mean any of them rebooted except once or twice, but rather they were slowing down so much that practically stopped serving any requests and were being pulled out from the LVS cluster. The traffic was not any different than usual, all other elements of the system worked perfectly fine (e.g. databases, storage), no one started any backup in the middle of the day as it happens sometimes… so what was happening?

First I am going to describe the setup a little bit. As I already mentioned it was about web servers. Each of them was running Lighttpd that handled the requests coming from the internet. It was configured however only to serve static content, such as images. The requests asking for PHP files were passed down with proxy module to Apache listening on another TCP port.

And so I started investigating the problem. As it turned out the systems were slowing down because lighttpd process grew to a few gigabytes eating the entire memory which caused system to start swapping heavily. This usually means death to a busy on-line system. Initially I thought about hitting some Lighttpd bug as nothing else seemed wrong, but after a short while I remembered one thing that can cause such behavior. If you use it as a proxy, it will need to buffer the entire response from the backend server before sending to the client. And indeed I started browsing Apache access log and found entries similar to this appearing every few minutes:

CODE:

  1. 127.0.0.1 - - [15/Nov/2007:08:10:56 -0500] “GET /php/call.php?page=somearg HTTP/1.0″ 200 5105062572

Apparently some bug in PHP code with a loop having far too many iterations and even though Apache and PHP handled it without much hassle, Lighttpd kept allocating memory to fit the entire response into the buffer and caused all that mess.

Although this was an extreme case, it is easy to imagine the situation where the problems will appear with much smaller data being sent through Lighttpd proxy. For example with a PHP script for handling larger file downloads which gets many concurrent requests.


Entry posted by Maciej Dobrzanski |
4 comments

Add to: delicious | digg | reddit | netscape | Google Bookmarks

Related Posts

(SQL Relay 0.37 (Default branch)) (Content delivery system design mistakes) (Nginx Powers Hulu.com ?) (Reasons to delete a link exchange request) (MS07-062 – Important: Vulnerability in DNS Could Allow Spoofing (941672) - Version:1.0

November 20, 2007

Are you paying too much for your AdWords ads? Change it now!

Pay per click marketing can be a good addition to organic search engine optimization. However, if you do it wrong, pay per click will cost you a fortune without bringing results. If you do it right, AdWords ads will help you to make more money.

Related Posts

(How to optimize your Google AdWords campaigns) (How to react to Google’s latest AdWords changes) (Google Sponsored Links search) (Are your paying too much for pay per click advertising?) (How to avoid click fraud

November 19, 2007

Did something important happen today?

Oh, yeah, that’s right. We shipped. Hard to believe we’ve finally reached the finish line…

Related Posts

(Innodb locking and Foreign Keys) (Analyst Report: SiS: Agent vs. Agentless) (This is more important than getting more traffic) (MS07-048 - Important: Vulnerabilities in Windows Gadgets Could Allow Remote Code Execution (938123) - Version:1.0) (MS07-062 – Important: Vulnerability in DNS Could Allow Spoofing (941672) - Version:1.0

How walkable is your neighborhood?

This is cool… my friend Mike Mathieu set up a web page where you can enter an address and find out how walkable it is.

Microsoft”s campus gets a 31 (”For most errands, driving or public transportation is a must.”).

The Googleplex: 34. Good thing Google gives you a few bucks towards a Prius.

The Fog Creek office: 98 out of 100. (”Most errands can be accomplished on foot and many people get by without owning a car.”)

Conclusion: Ditch your car, work at Fog Creek.

Not loving your job? Visit the Joel on Software Job Board: Great software jobs, great people.

Related Posts

(Official Google statement: Can links to other web sites hurt your rankings?

November 18, 2007

Giving a talk in Zurich

I’m visiting customer in Zurich next week and also was invited to give a talk on MySQL Performance Wednesday November 21. If you’re in the area please feel free to drop by I’ll start by talking about Query Optimization and we’ll keep it interactive to see what else audience would like to know.


Entry posted by peter | No comment

Add to: delicious | digg | reddit | netscape | Google Bookmarks

Related Posts

(Slides from Zurich talk are now posted) (Speaking on RIT-2007, Moscow, Russia) (Lang .NET 2006 talk posted) (Giving in…) (hPLUS: 2005 Computerworld Honors Case Study
« Previous entries