The DataDirect ODBC Driver Warning

Post questions here relative to DataStage Server Edition for such areas as Server job design, DS Basic, Routines, Job Sequences, etc.

Moderators: chulett, rschirm, roy

Post Reply
paulyoung
Participant
Posts: 1
Joined: Tue Sep 16, 2003 6:52 am

The DataDirect ODBC Driver Warning

Post by paulyoung »

I have a job using DataStage Veriosn 6 on a Unix system connecting to Oracle.

The job connects to an oracle database through OCI stages and also connects to another database through ODBC via a Datastage Basic function.

The initialisation files all appear set up correctly but when I run the job I get a warning message for the job stating '[DataDirect][ODBC Oracle driver]The DataDirect ODBC driver you are attempting to access has been provided to you by AscentialSoftware for exclusive use with DataStage. You are not licensed to use this driver with any application other than DataStage.' I am not using the driver that it is complains about.

We know about the line within the configuration file that Datastage inserts if the above driver is used and we remove it.

Similar ODBC code to that in the funtion, if used as job control, works without getting the warning errors.

Unfortuantely, I need to use it within the funtion because of the additional funtionality needed.

Is there a way that the ODBC warning can be avoided/suppressed without suppressing 'valid' warnings that would come from the Datastage Basic function?


Thanks, in anticpation,

Paul
ogmios
Participant
Posts: 659
Joined: Tue Mar 11, 2003 3:40 pm

Post by ogmios »

You're only allowed to use the ODBC via a GUI job, not via a BASIC job, or you have to buy ODBC licenses (which are not cheap on UNIX machines). People have given an extensive explanation on it before on this site.

The trick we use is to either use OCI or transform our data to an ASCII file and then upload the file using a simple GUI job. You could also write a cron job that deletes the "expiration" counter from the .odbc.ini file

Regards,
Ogmios
ray.wurlod
Participant
Posts: 54607
Joined: Wed Oct 23, 2002 10:52 pm
Location: Sydney, Australia
Contact:

Post by ray.wurlod »

The drivers give 30 days "free" use, then start generating this warning. The only way to turn off the warning, if you want to continue to use the drivers, is to buy the licensing. This has been bought by Ascential to allow the drivers to be used by ODBC stage types and the DS_CONNECT command, but for no other purpose (notably use via the BCI).

Ray Wurlod
Education and Consulting Services
ABN 57 092 448 518
Paul Preston
Participant
Posts: 24
Joined: Wed Apr 02, 2003 7:09 am
Location: United Kingdom

Post by Paul Preston »

Two points on this.

Firstly, Paul Young (my colleague) is well aware of the points raised so far about license. (We followed previous threads on this topic most caerfully) When Paul's code runs as job control there is no warning in the job log but when run as a function there is (regardless of the presence of tag in .odbc.ini), so question is why. Yes we periodically remove the line from .odbc.ini because if we don't we get the license message for all cases of odbc from basic use (not just functions but job control as well). So it is not quite the same issue.

Secondly, and more interestingly, we were given a different driver by Ascential and told that this driver was not from Data Direct and didn't need a license. They tell us that the error message is coming from Ascential code and was left in by mistake and will be removed in the next release. (We are on 6.01). We run many thousands of jobs with odbc in basic each day and have to remove the tag in .odbc.ini about once a month. Previous driver we were in trouble after a few dozen jobs)

BTW, the data from odbc is used for look up and the function loads the data only on first line of main data flow. Originally, I had Paul use an OCI stage to load a hash file and look up on the hash file (all fairly standard) but Paul made the job five times faster by loading the data into a global variable array and using the Index function to look up on it in a basic function. Less readable, but it is certainly faster. The warnings in the job log are a problem.
Post Reply