Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> DORKISH DEVELOPERS

DORKISH DEVELOPERS

From: Billy <vslabs_at_onwe.co.za>
Date: 23 Jun 2005 04:21:43 -0700
Message-ID: <1119525703.745969.132330@f14g2000cwb.googlegroups.com>


Al Brown wrote:
> One of our DBA's found a relevant TAR on Matalink. It is an outstanding bug
> for some years. Over a WAN this is a huge problem is you are retrieving
> small amounts of data as in our case the overall amount of data returned is
> about 5000 (yes thousand) times as much as we are asking for. So instead of
> being a MS problem the ball is firmly in Oracles court.

Ba hum bug.

So Oracle screwed up providing a driver that support some silly Microsoft proprietary application programming interface.

<doing my best Jack Nicholson impersonation> You call that a bug! That is not a freaking bug! You cannot hande a Real Bug!!
;-)

> Customer has a performance problem with OLE DB when calling stored
> procedures
> in a large package that return ref cursors. This is because we query the
> entire package to determine the parameters, fetching back the whole package
> spec, which causes vast amounts of network traffic to be generated.
> The ODBC driver works the same way.

This type of thing is always an issue when dealing with a high-level generic abstract API that attempts to hide so much of the underlaying "complexities", that is screws up royally.

This will not be a problem when you deal directly with OCI (Oracle Call Interface). I would rather deal directly with OCI and create my own classes for that, than use ODBC, OLEDB, ADO or whatever else Microsoft comes up with.

I've seen some very nifty classes for networking (Indy comes to mind). Classes for serial/RS232 communication. All these attempts to do what ODBC/ADO/OLEDB/etc attempts to do. Isolate the programmer at a nice comfy warm-fuzzie-I-know-jack-shit-what-I'm-programming abstract level from the lower level API.

Been there. Done that. Numerous times. Know what works, and works well, and with the least amount of effort in the end, least amount of problems, best performance, most maintenance friendly and best life span? Personal experience, bloodied T-shirts, and many bumps on the head have shown me time and time again to using the underlaying API directly. Use sockets directly. Using the RS232 api directly. Use OCI directly.

Yeah.. and this is where I spare you my rant about Real Programmers and the friggen Code Jockies of today that does not even know what a control break is.

--
Billy
PS. Okay, so I'm low on caffeine. Still does not change the essence of
what I ranted about.
Received on Thu Jun 23 2005 - 06:21:43 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US