Hi,
I'm not sure if this is a DataStage issue or a Database issue. I have a transformer that has 3 output links. Each output link uses the NextSurrogateKey() to generate a sequence key from an Oracle DB Sequence object. The upstream and downstream all execute in parallel.
I get erratic PK violation errors due to duplicate PK values. What could the reason be?
Duplicate Surrogate Key
Moderators: chulett, rschirm, roy
-
- Premium Member
- Posts: 376
- Joined: Sat Jan 07, 2012 12:25 pm
- Location: Piscataway
Duplicate Surrogate Key
Jerome
Data Integration Consultant at AWS
Connect With Me On LinkedIn
Life is really simple, but we insist on making it complicated.
Data Integration Consultant at AWS
Connect With Me On LinkedIn
Life is really simple, but we insist on making it complicated.
I'm going to guess it's a DataStage issue somehow as, to the best of my knowledge and experience, an Oracle sequence is not capable of issuing any kind of duplicate value. Not that Oracle ever has any bugs, of course.
In your shoes I'd start with your official support provider.
In your shoes I'd start with your official support provider.
-craig
"You can never have too many knives" -- Logan Nine Fingers
"You can never have too many knives" -- Logan Nine Fingers
-
- Participant
- Posts: 54607
- Joined: Wed Oct 23, 2002 10:52 pm
- Location: Sydney, Australia
- Contact:
-
- Premium Member
- Posts: 376
- Joined: Sat Jan 07, 2012 12:25 pm
- Location: Piscataway
Craig and Ray,
Thank you for the response.
We did a sanity check to ensure that there are no alternate processes trying to generate the key without the sequence. We even went so far as to tweak the security so that only the system id can insert rows into the table in question.
The only thing that has kept the error from popping up again is changing the execution mode to "Sequential" which led me to believe that the multiple threads accessing the sequence object are causing the conflict somehow. Though, as Craig rightly put, the Oracle sequence is "Incapable" of an anomaly like this
Thank you for the response.
We did a sanity check to ensure that there are no alternate processes trying to generate the key without the sequence. We even went so far as to tweak the security so that only the system id can insert rows into the table in question.
The only thing that has kept the error from popping up again is changing the execution mode to "Sequential" which led me to believe that the multiple threads accessing the sequence object are causing the conflict somehow. Though, as Craig rightly put, the Oracle sequence is "Incapable" of an anomaly like this
Jerome
Data Integration Consultant at AWS
Connect With Me On LinkedIn
Life is really simple, but we insist on making it complicated.
Data Integration Consultant at AWS
Connect With Me On LinkedIn
Life is really simple, but we insist on making it complicated.