ERROR: "The mapping contains blocking transformations which may cause the mapping to hang while executing." when validating a PowerCenter mapping with multiple Joiner transformations | ||||||||||||||
| ||||||||||||||
When validating a PowerCenter
mapping with multiple joiners, the mapping is invalidated and the following
message appears:
The mapping contains blocking transformations [Joiner_Name] which may cause the mapping to hang while executing.What is the main Joiner Validation Rule? |
||||||||||||||
| ||||||||||||||
This message indicates that one or more Joiner transformations may be
blocked based on the master/detail relationship set up in the
mapping.
|
||||||||||||||
| ||||||||||||||
The basic rule for this validation is that the active reader
should not be blocked.
ExampleIn this example the validation for the first Joiner takes the master thread as a first reader (S2), so S2 is the active reader, and this reader will read data first. When it attempts to start reading the data (as it is the master thread for J1), J2 is requesting to block (as it is a Detail thread in J2) which will cause the session to hang. ExampleIf the master and detail reader is switched for the second Joiner (J2) as in the following example:The first reader (S2 - evaluated based on the first Joiner master) will not be blocked because both threads which are linked to that particular reader are expecting data (requesting to read data). Once that reader (S2) is finished reading the data, it will start the second reader (S1). For the second reader, even though we have detail and master threads connecting to S1, both threads are expecting data, so this reading source will not be blocked. |
Thursday, September 26, 2013
Subscribe to:
Post Comments (Atom)
1 comment:
Very informative and wonderfully articulated. Thank you for sharing this.
Post a Comment