Showing entries 37221 to 37230 of 44038
« 10 Newer Entries | 10 Older Entries »
Use String.Compare -- sometimes

I recently came across this blog post on using String.Compare instead of the tried and true method of converting one string to lowercase and comparing to a known lower case value.  It's important to remember that strings in .NET (as in Java) are immutable so the act of lower casing a string will always make a new string.  The memory subsystem for .NET is turned for  handling lots of small objects but the fewer objects you create, the fewer that have to be checked and managed by the garbage collection system.

Still I wondered what the time difference would be between the two approaches.  So I setup a very simple test where I compared the string "FooBar" to a string variable that contained the value "foobar" one million times.  The first test used the approach of …

[Read more]
MySQL Archiver 0.9.2 released

This release fixes some minor bugs and adds a plugin mechanism. Now you can extend MySQL Archiver with your own code easily. You could use this to run setup and tear-down, hook code into the archiving process, and more. Possibilities include building summary tables in a data warehouse during archiving, handling dependencies such as foreign keys before archiving each row, or applying advanced logic to determine which rows to archive.

Why I missed PHP Vikinger ..

.. and more annoyingly, why I spend the night in Amsterdam, even though the Dutch PHP conference is not until next weekend. So there were apparently some pretty bad thunderstorms over France, Belgium and the Netherlands. As a result the plane that should take me to Amsterdam on the way to Sandjeford arrived about an hour late. Back in the day, when airlines still afforded themselves some ground time, this would not have been that big a deal, as I had no checked luggage and so ideally I could have switched planes in time as I had 1 hour stopover time in Amsterdam. Well these days it means that if the incoming plane comes one hour late, you will likely also be one hour late. Usually they can try to make up a few minutes by burning some more fuel. In this case the thunderstorms actually forced us to fly a non standard route, which took even longer.

Now when they broke the news in Zurich …

[Read more]
PlanetMySQL down?

I am getting 2013: Lost connection to MySQL server during query
I think they need the services of MySQL Professional Services :)

MySQL Archiver 0.9.2 released

This release fixes some minor bugs and adds a plugin mechanism. Now you can extend MySQL Archiver with your own code easily. You could use this to run setup and tear-down, hook code into the archiving process, and more. Possibilities include building summary tables in a data warehouse during archiving, handling dependencies such as foreign keys before archiving each row, or applying advanced logic to determine which rows to archive.

Oracle Coherence vs. Oracle RAC or Coherence + MySQL = MySQL RAC?

I came across Oracle Coherence today. Seems like this is another approach to clustering than Oracle RAC. Here is the marketing quote from the Oracle website: Oracle Coherence is a JCache-compliant in memory distributed data grid solution for clustered applications and application servers. Oracle Coherence makes sharing and managing data in a cluster as simple as [...]

Another Real Life Tale of Why We Need Open Software

You'll probably get bored of all my stories of why we need open software, but here's another great one:

We were working on shipping integration for the opentaps Open Source ERP + CRM system with a Global Freight Carrier. We needed to submit a ship request to them and print a shipping label. We set up an account with them, got a username, a password, an XML access key--everything is ready to go. We send the perfectly formatted XML according to their documentation requirements and kept getting an "Invalid/Missing Shipper Number" error.

We contact tech support on their website. We wait. We call our sales rep. He says there's nothing he can do. We tell him we'll ship with another equally global freight carrier. He gets his tech supervisor, who says that the only support is by email.

We wait. And wait.

And get really paranoid. We start …

[Read more]

What a surprisingly busy week.

Spent quite a lot of time tracking down a linking problem on Itanium. It appears that GNU ld 2.14 has some serious deficiencies. GNU ld 2.17 (the current stable release) does fix the problem. Unfortunately, the last supported version of GNU ld on RedHat AS 3 for Itaniam is version 2.14.90.0.4.20030529 - which clearly cannot contain the fix which was written in November of 2003. I suppose what to do is now a decision to be made by someone else.

Also spent some time with Federated - Bulk insert support within the storage engine and also how to make Federated play better with transactions and network overhead. Have to put together a new WorkLog entry if I cannot find a relevant one. I need to work on writing better changeset comments. Ingo says, and I have to admit that I agree a bit, that my comments assume that the reader is familiar with the code and bug in question. I need to make them a …

[Read more]
MySQL Cluster SQL Tips

So, I mentioned in my MySQL Cluster post that I found out that cluster and joins don’t get a long too well. There are a couple of tips I have for using joins or replacing them with other techniques that I thought I would share.

Here are some things I keep in mind when using the NDB engine. These may apply to the other engines as well.

  1. Test using the NDB engine. Testing against another engine is not adequate.
  2. Avoid JOIN if you can, test often if you can’t
  3. Avoid subqueries always
  4. Select using primary keys when at all possible. Always select using a key.
  5. Be sure to include both your where and order by columns in your keys.

Try your join from several directions.

Sometimes, the way you join can affect the engine. This is more …

[Read more]
RAID is dying?

There is a bunch of posts on Planet MySQL this week about RAID.  This comment from Kevin Burton really kind of made me go “huh?”.

You?re thinking too low level. Who cares if the disk fails. The entire shard is setup for high availability. Each server is redundant with 1-2 other boxes (depends on the number of replicas). If you have automated master promotion you?ll never notice any downtime. All the disks can fail in the server and a slave will be promoted to a new master.

Monitoring then catches that you have a failed server and you have operations repair it and put it back into production as a new slave.

Someone has to think low level.  The key phrase in there is  you have operations repair it and put it back into production as a …

[Read more]
Showing entries 37221 to 37230 of 44038
« 10 Newer Entries | 10 Older Entries »