Author Archive

A Question from OTN Forum

Wednesday, April 23rd, 2008

Here is the question that was posted on OTN Forum Grid Control Extensibility (not the topic of the forum!) yesterday:

I recently moved south to Bangalore and I am working for a large software integrator. My project team is working on a JEE application project that uses test driven development methodologies. We are planning to use a host of new breed technologies such as Enterprise 2.0, Ajax, Drools, JDO, Hibernate,and mashups. Are you able to point me to online and offline resources/trainings that can help our team get up to speed with these latest technologies.

All the help that group members can provide in this regard is much appreciated.

My first reaction was — how stupid one should be to post such absolutely irrelevant question in that forum? I do see from time to time some questions that are about Grid Control but not about Extensibility and, assuming I have a minute, I might suggest to ask it in the neighboring forum instead. However, this time it seemed absurd to choose this place.

I was even more surprised that someone actually tried to provide a sensible response, I was thinking to blog about it to re-iterate the point that Tom Kyte expressed recently but I couldn’t find the thread anymore. I thought it was moved by a wise admin to a more appropriate place. I did a quick search on OTN forums and found it in… well, many other OTN forums. So it seems that it was simply deleted from Extensibility forum.

Google showed that OTN forums are not the only one appearance of this request. Is this an absolute stupidity or an example of plain scam?

Well, I just needed that rant.

Alex Gorbachev at COLLABORATE 08

Friday, April 18th, 2008

I guess I have only one and a half posts about COLLABORATE 08 this year. It’s a bit unfortunate that I couldn’t make the whole conference, but only last day-and-a-half. In addition, I’ve been speaking at the two lasts slots of the conference so it’s been quite busy for me.

As I mentioned already, the scheduling for my presentation got a bit screwed-up due to the last minute call to participate in the speaker panel — “To RAC or Not To RAC: What’s Best for HA”. Thanks to Dan Norris, my session was finally moved to 11:00, which is right after the panel. On the other hand, 11:00 slot is the last IOUG session of the conference. This fact, coupled with last minutes re-scheduling, brought the number of participants down. Even though there were about 30 people and the hall (Korbel 1C) was small enough not to seem empty.

Back to the RAC speaker panel, I enjoyed the discussion and especially the fact that speaker’s opinions on how wide RAC adoption should be were a little different. I took the liberty of starting the discussion with a quite provocative quote — “complexity is the enemy of availability”. Interesting that the other panel speakers seemed to disagree to it to some extent by countering it — use knowledge to fight complexity. Not that I don’t agree with it (on the contrary) but my point was rather, “why make it complex when you can keep it simple?” Some of the reasons for over-complicating systems can be found here.

(more…)

Arrived at COLLABORATE 08

Wednesday, April 16th, 2008

I’m at Collaborate 08 in Denver these days. I arrived yesterday evening so I haven’t had a chance to see any sessions yet but I did have a nice dinner with a bunch of OakTable folks. The steak wasn’t great but the best part was that I could enjoy my time with people I don’t get to see very often.

Today started with some confusion. My presentation, Oracle 11g New Features Out of the Box, was originally scheduled on Thursday at 9:45 AM but due to participation in the speaker panel ,”To RAC or Not To RAC: What’s Best for HA?”, it was rescheduled to today, Wednesday, at 4:30 PM. However, this change didn’t make it to the printouts with latest changes so the options right now are either re-schedule my session to a later time tomorrow or keep it at the original schedule and pull me off the panel. I’d really enjoy that panel as it goes right along my alley but I need to make my session as well so we’ll see how it works out.

I’m off to the Carol Dacko’s presentation about DBMS_XPLAN now and looking forward to show up at the RAC SIG Birds of a Feather later today. Stay tuned - more to come…

MySQL Plug-in 0.42 for Oracle Grid Control: First Beta Released

Monday, April 14th, 2008

It has finally happened! The first public release of the MySQL plug-in for Oracle Enterprise Manager 10g Grid Control is out.

It’s been a while since I first started to work on this, first as part of the Grid Control Extensibility article that I wrote for IOUG SELECT Magazine in 2006 (thanks to John Kanagaraj for encouraging me to write it), and then later as part of a demo for my presentations. I was already working at Pythian and was considering further developing my example and releasing it.

In the last few months, more and more people showed interest in the potential plug-in, and even few guys from Oracle contacted me independently of each other with their own reasons to have a MySQL plug-in available. This interest accelerated the fermentation of thoughts in my brain, and I got down to work. Pythian generously sponsored my development time.

I’ve called this first release beta but as I didn’t do much testing, it should probably be called alpha. Having said that, it has been tested with MySQL 5.1 and 5.0, and it should also work with MySQL 4.1. I develop and use it with Oracle Management Agents running on the Linux platform, but I changed all the collection scripts to use the Perl that comes with the Oracle agent so it should run on Windows as well. It works quite stably for me, and I have verified it in several real-life environments.

I would probably take some more time before releasing it, but I really wanted to have the plug-in out before I leave for COLLABORATE 08 (should I also tell you the readiness level of my presentation?). I hope to get some feedback and first impressions from DBAs who try the plug-in. Bear in mind that this is the very first release — expect some rough edges. Please do report them here. We will probably set up a more structured set of pages, but for now leaving comments here is the way to go.

Here are the details. The first release version is 0.42 because that’s obviously the perfect number to start something good.

What’s implemented so far

(more…)

Oracle ASM 11g: Does the ASMCMD cp Command Really Work?

Tuesday, April 8th, 2008

Since the introduction of ASM in Oracle 10g Release 1, every ASM administrator has been dreaming of a simple command line tool to copy files between ASM diskgroups and other filesystems. Oracle ASM 10g Release 2 added the handy asmcmd utility, but even though everyone expected a copy command there, it had not been implemented.

The only way to copy files to or from an ASM diskgroup was either to use RMAN, to configure XDB for FTP access, or use the DBMS_FILE_TRANSFER package. No wonder that the cp command is the most popular addition to asmcmd tool in Oracle ASM 11g: the hardest barrier to convincing my customers to use ASM has been the inability to access the files and copy them to the OS filesystem using the command-line copy command. Customers wanted to “feel” the files and be able to easily manipulate them.

While working on a Collaborate 08 presentation on Oracle 11g new features out-of-the-box, I was verifying new commands in Oracle ASM 11g’s asmcmd utility. It turned our that copying files from or to ASM is still a problem.

First, I tried to copy a single text file to an ASM diskgroup:

ASMCMD> cp /home/oracle/.bash_profile +dg2/test.file
source /home/oracle/.bash_profile
target +dg2/test.file
ASMCMD-08012: can not determine file type for file->’/home/oracle/.bash_profile’
ORA-15056: additional error message
ORA-17503: ksfdopn:DGGetFileAttr15 Failed to open file /home/oracle/.bash_profile
ORA-27046: file size is not a multiple of logical block size
Additional information: 1
ORA-06512: at “SYS.X$DBMS_DISKGROUP”, line 207
ORA-06512: at line 3 (DBD ERROR: OCIStmtExecute)

Hmm . . . Okay. Let’s try to do it in multiples of diskgroup blocks: (more…)

How To Identify the Database Links of a Failed Refresh Job

Tuesday, April 1st, 2008

From time to time, we get DBMS_JOB failures for failed refreshes that happen due to broken database links.

The error in the alert.log is ORA-12012: error on auto execute of job {number}, followed by one of ORA-12547: TNS:lost contact, ORA-12170: TNS:Connect timeout occurred, ORA-12541: TNS:no listener, or any other of the network connection failures.

I usually have a quick look into DBA_JOBS to find out the materialized view (MV) name and then peak into the DBA_MVIEWS.MASTER_LINK column.

However, I have a client with refreshes scheduled using MV refresh groups, and it took me a while to recall the view name, asking around and RTFM’ing. Since this situation comes up regularly, I wrapped up a quick script that parses job content, takes in account MV refresh groups, and outputs the database link(s) involved. I think it could be useful to few others so here it goes: (more…)

Is Summer Canceled in Ottawa This Year?

Monday, March 24th, 2008

If you are a regular reader of this blog, you know that I was at the Hotsos Symposium 2008 this year. You might not know that I also had a chance to take few days off and spend 1+ week vacation in Texas after the symposium — enjoyed the sun and warm weather. My family liked that even more than I did.

Unfortunately, when I was back home last weekend, I discovered pretty unpleasant view from my windows (that’s not basement!):

Snow Window 1

Snow Window 2

The view is much better now — I can see some bits of blue sky above a snow bank. So it’s end of March and these days are sunny but freeing — feels like -20 degrees Celsius (below 0 Fahrenheit). My back still hurts from excessive snow shoveling last weekend (so that I can see blue sky from my windows). And… sorry nothing about Oracle — I’m too busy shoveling the snow away from my house so that when it melts next year — I won’t have flooding problem.

I know warmer places do exist! Maybe I should find one?

Hotsos Symposium 2008 — The End

Thursday, March 6th, 2008

Today is Hotsos Symposium 2008 Training Day — one full day with Tom Kyte. I haven’t registered for it so I took the chance to sleep until 10 this morning which was excellent idea considering that last night we were quite late going to bed thanks in parts to the joined demo that James Morle and Mike Erwin organized at the last presentation yesterday. I was in the James’ session and he was demonstrating how to hide latency problem with batching. I suspect that Mike, in the next hall, was showing the impact of MTU settings on cluster interconnect. The end result is that beer bottles travelled between the presentation halls and James ended up with about 3 packs of Guinness and Shiner Bock. That what kept us up longer last night.

James’ presentation itself was excellent — he explained that all performance problems can be caused by either skew or latency. You can’t normally fix skew issue so you just need to be aware and account for it. Latency can sometimes be shortened but usually insignificantly or it’s impractical (i. e. very expensive). It’s also very important to distinguish bandwidth and latency. I like his idea that the efficient way to solve latency is hiding it and there are generally two ways to do that — batching and threading. Improving bandwidth often doesn’t cause any performance improvement without taking latency into account. Very insightful talk. Thanks James.
(more…)

Hotsos Symposium 2008 — Still On

Wednesday, March 5th, 2008

The symposia is still ongoing and my head is slowly filling up — relieved from my presentation, finally, I’m able to focus on others’ sessions.

Yesterday, Tanel Poder presented his new tool Sesspack and his integration with Excel. 3 years ago, I created a similar tool and collected session waits and statistics transformed into differences per the interval and organized in the star schema to simplify the analysis. I tried to write a front-end in PHP — it was taking ages and I didn’t have time. Then I tried APEX (HTMLDB 1.6 back then) and it wasn’t flexible enough. I ended up querying the data directly and copy & paste to Excel where I could use pivot charting. What a great feature of Excel — it let me organize the data easily and visualize the problems to management, system and storage administrator and other DBA’s. I moved on and didn’t have time to continue this project, clean it up and put into public domain. I’ve still had it in my mind but there is no need now since Tanel already did far better job. He put the first version of the Sesspack on his web-site about half a year ago. What excited me more this time was the integration with Excel that he did — what a powerful but simple tool in the hands of a smart DBA. I’m looking forward to use it when it becomes available on his web-site.
Update: Tanel put the material on his web-site here.
(more…)

Oak Table Network

Tuesday, March 4th, 2008

I didn’t mention the most exciting news of the yesterday (well, for me at least) — I’m a member of the Oak Table Network now! I’m so delighted and proud to be the part of that group and also very grateful for the invitation to join those bright people.
.

It’s actually old news now (thanks Doug and Marco) but I thought that I should proudly state it here. On the other hand, “someone” mentioned that “They’ll let *anyone* in these days!”. OK eh… where is the application form?