Re: JAVA Developer

  • From: "Dennis Williams" <oracledba.williams@xxxxxxxxx>
  • To: wjwagman@xxxxxxxxxxx
  • Date: Wed, 10 Jan 2007 19:39:09 -0600

William,

Well, don't just go off and hibernate. Okay, it had to be said.

It all comes down to SQL. And you are qualified to participate in that. In
my experience, applications with problems fall into a couple of categories:
  - A few bad SQL statements. This is the simplest situation, and is the
easiest to tune. You locate the most egregious SQL statements and then deal
with them.
  - Too many SQL statements. Maybe the application is using too many SQL
calls to accomplish what it needs to do. Maybe it isn't using bind variables
(these are so old and such a standard part of database interaction that
nearly all modern tools utilize them, however, the tool may require the
developer to set a switch in order to turn them on).

Use the simple tools first, query the v$ tables or run STATSPACK or some
other tuning tool of your choice to see if you have a few bad SQL
statements. Even if that isn't the problem with this application, you may
still be able understand what the problem is.

If the problem isn't a few bad SQL statements, then you may need to run a
10046 trace.

Another thing to watch out for is whether the tool tries to read each table
for each access. Microsoft ADO tends to do that by default, for example. You
should be able to pick that out of the SQL very quickly.

Another issue that sometimes arises is where the SQL statements are okay,
but there is a delay between each statement. A network delay can cause this
type of problem, or a slowly-responding. That will show up in wait
statistics.

Good luck, and keep us posted.
Dennis Williams

Other related posts: