The Replication Server DSI does not use bulk copy-in when:
Autocorrection is on and the data is not part of subscription materialization.
rs_insert has a user-defined function string.
text column has a user-defined
function string for rs_writetext with
output none
or rpc
.
The data row contains opaque datatype or a user-defined datatype (UDD) that has an rs_datatype.canonic_type value of 255.
The data row contains an image or a Java datatype.
The bulk copy-in feature is not supported under the conditions listed below. In these instances, disable bulk copy-in.
The replicate database is not Adaptive Server. In this case, if the DSI bulk copy-in is enabled, DSI terminates with an error message.
The data size changes between Replication Server and the replicate Adaptive Server character sets. In this case, if the DSI bulk copy-in is enabled, DSI terminates with this message:
Bulk-Lib routine 'blk_init' failed. Message from server: Message: 4847, State 1, Severity 16 -- 'BCP insert operation is disabled when data size is changing between client and server character sets. Please use BCP's -Y option to invoke client-side conversion.
The owner.tablename length is larger than 255 bytes. If the DSI bulk copy-in is enabled, Replication Server terminates with this message:
Bulk-Lib routine 'blk_init' failed.
To specify not to use bulk copy-in when owner.tablename length is larger than 255 bytes:
Turn trace on:
trace "on", rsfeature, ase_cr543639
Add this to the Replication Server configuration file:
trace=rsfeature,ase_cr543639
Other limitations:
Unlike the insert command, bulk copy-in does not generate timestamps; NULL values are inserted to the timestamp column if the timestamp column is not included in the replication. Either disable bulk copy-in, or set up your replication definition to include the timestamp column.
Text and image columns are always logged, even if you change the writetext function string to no log.
Bulk copy does not invoke insert trigger in Adaptive Server.
The configuration parameter send_timestamp_to_standby has no effect on bulk copy-in. timestamp data is always replicated.