Archive

Archive for January, 2007

Oracle 10.2.0.3 Patchset - Known Issues and Bugs

January 11th, 2007 Alex Gorbachev No comments

Going through my feeds I read from Kevin Closson that Oracle 10.2.0.3 patchset is not functional on Solaris SPARC 64bit platform with datafiles on Veritas VxFS. Actually, Metalink Note for bug 5747918 says it’s for “any database related files on Veritas” so not sure if simple VxVM raw devices are affected as well as Veritas Cluster Filesystem.

However, you still have something to worry about even if you are not using that combination. You might want to check Metalink Note 5667023.8 if you are on Red Hat Linux and maybe even SUSE - you never know. RHEL AS Update 4 supposed to be fine while CRS might not start after patchset installation on Update 3. Workaround is available.

Other platforms to watch out with 10.2.0.3 patchset are Windows and Linux 32 bit - Metalink Note 403616.1 “Many Child Cursors create in 10.2.0.3 on Windows and Linux”. This will likely affect applications with heavy usage of bind variables (perhaps, ones with cursor_sharing=force/similar as well) and busy OLTP is a good candidate. See for yourself the note I mentioned above - it describes some symptoms and consequences (latch contention, ORA-4031, ORA-600) pretty well. The good news is that Linux platform has one-off patch available already - patch 5705795.

Finally, if you are using LDAP you might want to check Bug 4279598 out. It’s not a new bug but rather a behavior change that might affect you. Though, not very likely for generic scenarios.

Once again a confirmation of a golden rule - unless you are a brave tester, don’t rush into new Oracle patchsets. It’s also a good habit to review “Known Issues” Metalink Note for a particular patchset even in case it was out for a while - they tend to get updated. For 10.2.0.3 it’s Metalink Note 401435.1. Happy patching!

Categories: Alex @ Pythian Tags:

MySQL Can’t Use Index With Uncorrelated IN Subquery

January 9th, 2007 Alex Gorbachev No comments

Today is the first time I had to look at MySQL performance. Tiny database as web application back-end was having significant performance issues with spikes of CPU workload. After identifying problematic queries, I found a pile of statements using IN subqueries. Typical example is:

SELECT *
   FROM t1
  WHERE c1 IN (SELECT c1
                 FROM t2
                WHERE c2=100);

Checked explain plan - t1 is accessed via full table scan.
Note that table t1 had an index on column c1 and it was selective and statistics collected. Rewrote statement as

SELECT t1.*
   FROM t1, t2
  WHERE t1.c1=t2.c1
    AND t2.c2=100);

Query flies. Checked execution plan - index on t1 column is used.
Quick research located the bug #9021which might get fixed in 5.1.

I asked around and our MySQL experts assured me that this is one of the minor and not so disturbing issues, in fact. I can’t imagine what those disturbing issue are. I guess Oracle XE does have some advantages over MySQL for small installations.

Categories: Alex @ Pythian Tags:

Welcome Doug!

January 7th, 2007 Alex Gorbachev No comments

This week was great! First week of the new year and the year promises to be very exciting.

I finally got haircut and shaved - in the new year with the new face. My darling loves me again. :)

After some busy time I got back to blog and have a lot of plans for it.

This weekend I rearranged my working room and fit two new desks - for me and my darling… yes, we’re going to share the room and I’m looking forward to the results of this experiment.

The final excitement of the week - Doug Burns is finally here in Ottawa. You must see his smile in the airport - somehow he managed to read my comment and already expected me while I thought it would be surprise.

Categories: Alex @ Pythian Tags:

Twitter, Pythian Style; also Oracle’s SYSTEM_PRIVILEGE_MAP

January 5th, 2007 Alex Gorbachev No comments

December was a busy month… a very busy month. We’ve got a new customer in our team and this customer came to Pythian in a very typical way - as to the last resort, desperately trying to save a project that had gone far off track. An emergency schedule is tough - accommodating few hundred unplanned hours is not easy, so blogging wasn’t on the top of the list: SELECT * FROM todo_table ORDER BY priority DESC;. Well, maybe I should just admit that I was rather busy with some holiday stuff. By the way, this project was built around Oracle Streams so expect some blogging about that in the near future.

But I digress. Now to the subject at hand (psst, there will be some technical stuff in the end)… A few days ago I came across Twitter. I liked that idea very much and even tried it for one evening. I don’t think Twitter fits my lifestyle, but I recognized a very familiar concept. Indeed, it reminds me of one feature of our Pythian Support Track. Our working day is organized around this tool and one of its characteristics is very much Twitter-like, answering the simple question, “what are you, or what have you been, working on,” down to the minute.

(more…)

Categories: Alex @ Pythian Tags: