I am trying to capture rejects while upserting records into Sybase. I am using the "insert new rows or update existing rows option."
When a record is rejected during insert, no warning is written to the log. When record is rejected during update a warning is generated. In both cases the REJECTED, REJECTEDCODE are 0 in the transformer output link.
Has anybody else experienced this issue. I appreciate any inputs on this issue.
Its actually a Parallel job with BASIC transformer and SybaseOC stage. I am posting in the server forum as these stages will most likely be used in server jobs.
Sybase OC stage - Reject capturing
Moderators: chulett, rschirm, roy
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
The BASIC Transformer in parallel jobs is not the same as the server Transformer stage. For one thing, it won't do reference lookups.
See extended post in parallel forum for appropriate techniques to use in parallel jobs.
See extended post in parallel forum for appropriate techniques to use in parallel jobs.
IBM Software Services Group
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
Any contribution to this forum is my own opinion and does not necessarily reflect any position that IBM may hold.
I tried the same in a Server job. Still nothing works in case of insert reject. No warning written to log and REJECTED, REJECTEDCODE are 0's.ray.wurlod wrote:The BASIC Transformer in parallel jobs is not the same as the server Transformer stage. For one thing, it won't do reference lookups.
See extended post in parallel forum for appropriate techniques to use in parallel jobs.
Everything works fine with the update reject, i.e. a warning is written to the log & REJECTED, REJECTCODE have proper values.
But it should still 'work' as in capture rejected rows. How are you defining the 'reject' link - check the option, via a constraint, both, what?
And when you use those 'combo' update actions, never expect the first action to generate any rejects, that failure is what drives the firing of the second action... so only the second one can generate rejects.
And when you use those 'combo' update actions, never expect the first action to generate any rejects, that failure is what drives the firing of the second action... so only the second one can generate rejects.
-craig
"You can never have too many knives" -- Logan Nine Fingers
"You can never have too many knives" -- Logan Nine Fingers
DSguru - There is no "Array size" setting for Sybase OC stage
chulett - You are right on target. I couldn't think of it. When I tried "insert only" option it worked.
That brings back me to the BASIC transformer issue. It still doesn't capture REJECTED, REJECTEDCODE. Perhaps I should post this in PX forum as this is specific to BASIC transformer in a Parallel job.
chulett - You are right on target. I couldn't think of it. When I tried "insert only" option it worked.
That brings back me to the BASIC transformer issue. It still doesn't capture REJECTED, REJECTEDCODE. Perhaps I should post this in PX forum as this is specific to BASIC transformer in a Parallel job.
When I tried the combo option with Oracle OCI in a server job its behaving properly. With "insert or update" option, update executes only if a Primary Key or unique index violation where as with Sybase OC update executes on any failure of insert (including NOT NULL).chulett wrote:But it should still 'work' as in capture rejected rows. How are you defining the 'reject' link - check the option, via a constraint, both, what?
And when you use those 'combo' update actions, never expect the first action to generate any rejects, that failure is what drives the firing of the second action... so only the second one can generate rejects.