CURRVAL is NEXTVAL plus the Increment Value. You typically only connect the CURRVAL port when the NEXTVAL port is already connected to a downstream transformation. When a row enters a transformation connected to the CURRVAL port, the Integration Service passes the last created NEXTVAL value plus one.
The following figure shows connecting CURRVAL and NEXTVAL ports to a target:
For example, you configure the Sequence Generator transformation as follows: Current Value = 1, Increment By = 1. The Integration Service generates the following values for NEXTVAL and CURRVAL:
NEXTVAL
CURRVAL
1
2
2
3
3
4
4
5
5
6
If you connect the CURRVAL port without connecting the NEXTVAL port, the Integration Service passes a constant value for each row. When you connect the CURRVAL port in a Sequence Generator transformation, the Integration Service processes one row in each block. You can optimize performance by connecting only the NEXTVAL port in a mapping.
When you run a partitioned session on a grid, the Sequence Generator transformation might skip values depending on the number of rows in each partition.