MDAC Woes

Our legacy suite of applications uses a number of technologies to access an Oracle database on the back end. Some applications use ActiveX Data Objects (ADO). Other applications use OLE DB. We install Microsoft Data Access Components (MDAC) when we install our applications to ensure that ADO and OLE DB are available. Previously we had MDAC version 2.6. Recently we upgraded our development tools. So we also planned to upgrade to MDAC version 2.8. The install scripts were upgraded to reflect this. When we went to internal test, a lot of pain broke out.

Some testers installed our application and had no problems. The other half of the testers installed the application, found a few features working, but ran into a lot of database access errors. I should have mentioned that some of our applications use Oracle Pro*C some of the time to access the database. The Pro*C relies on the Oracle client. It turns out this code worked regardless of the state of the MDAC install. But the ADO and OLE DB calls were bombing on half the test workstations.

A number of developers were out of the office. So my team lead asked me to do some tests on the failed test workstations. I went out and downloaded the MDAC version 2.8 installation executable from Microsoft. Apparently nobody on the development team put this where I could access it. That alone should be a sign that something is amiss in development. I tried to manually install MDAC version 2.8 on the tester machines. But each time I did, the install stopped and stated that Windows already has this functionality as part of the operating system. Foiled by Microsoft?

At this point I determined that it was time for the install boys from the development team to actually come in to the office and find out what was wrong. They heard about the tests I ran. And I heard them postulate that it might have something to do with the wrong version of the Oracle client being installed. That sounds wrong. But I am going to defer this to them. Maybe the fix is to revert to Pro*C code for all the applications. That is a joke. At least the application is working on my machine.