Is there a clean way to suppress warnings in Director?
I'm using DataStage 6.x and am updating information in an Oracle table (using OCI plugin). Not all of the rows that I currently send to the update stage is present in the target table so these rows generate warnings in the logfile (if the data is not in there it should not be updated).
One possible solution would be to use a lookup stage to first check whether the data is in there before sending it to the "update" stage. But since there are only a few hundred rows on the 300.000 rows I update every day this lookup slows down the job enormeously.
Is there a clean way to dispose of these warnings (I don't like "Finished (see log)")... even if I redirect the errors using contraints on database errors, the database warnings still appear in Director.
Regards,
Ogmios
Suppressing warnings
Moderators: chulett, rschirm, roy
Curious what your specifics are: server O/S, Oracle version, OCI8 or 9 plugin and what action you have selected - Update existing rows only? What is the exact warning that is being logged? I don't recall seeing this situation before, but I would generally screen updates before sending them to Oracle.
It sounds like the number of rows in your target may be static since you only allow updates. In that case, or maybe in general, you would benefit from pulling the keys down into a hash and doing the lookup against the hash. If static, you could build the hash once. If not, you'd have to weigh the speed of hash creation against the increase in lookup speed and the elimination of warnings. Bottom line, I believe that the only way to suppress your warnings is to eliminate the cause of the warnings.
Be happy to be proven wrong... [;)]
-craig
It sounds like the number of rows in your target may be static since you only allow updates. In that case, or maybe in general, you would benefit from pulling the keys down into a hash and doing the lookup against the hash. If static, you could build the hash once. If not, you'd have to weigh the speed of hash creation against the increase in lookup speed and the elimination of warnings. Bottom line, I believe that the only way to suppress your warnings is to eliminate the cause of the warnings.
Be happy to be proven wrong... [;)]
-craig
I'm using DataStage 6.x on Solaris, OCI8 to an Oracle 9 database.
One datastage job will load rows from one source system, while the update job only updates information in the same table but this information is from another source system (as a kind of an override).
The source system for which I do the updates contains a little bit more rows than the other source system so when these rows are passed to the "update stage" it returns an error like "no row found for fetch, update, or ..." which is correct since these rows are not present, but the customer only cares for the rows which are originally in the other source system anyway.
What would be nice is that when you redirect rows on "database failure", no warnings would appear in Director. Didn't find anything so far to "suppress" the warnings (except doing the lookups), and don't expect to find a solution anymore [:(][:D]
Ogmios
One datastage job will load rows from one source system, while the update job only updates information in the same table but this information is from another source system (as a kind of an override).
The source system for which I do the updates contains a little bit more rows than the other source system so when these rows are passed to the "update stage" it returns an error like "no row found for fetch, update, or ..." which is correct since these rows are not present, but the customer only cares for the rows which are originally in the other source system anyway.
What would be nice is that when you redirect rows on "database failure", no warnings would appear in Director. Didn't find anything so far to "suppress" the warnings (except doing the lookups), and don't expect to find a solution anymore [:(][:D]
Ogmios
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact: