问题描述
从Sql Server 2005到Sql Server 2005的同步(单向上传)是正常的,当目标数据库为Oracle时,(单向上传)不会触发ApplyChangeFailed事件。
SQL同步时的信息:
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:343, RowId:orders-1 UV:1,78012 CV:1,78011 IsTomb:False
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:343, ;使用PK更新行:order_id =" 1" on peer2
INFO ,WcfSvcHost,8,06 / 16/2010 13:40:41:359,乐观变化应用程序失败
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:359,  ;  执行命令:orders_SelectRow
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:359, 参数:order_id值:1
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:359, 参数:@sync_scope_local_id价值:12
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:359,
VERBOSE,WcfSvcHost,8 ,06/16/2010 13:40:41:359, RowId:orders-1 UV:1,78011 CV:1,78011 IsTomb:False
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:359,   ;         检查冲突。
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:359,   ;  远程对等体包含本地更改。返回RemoteSupersedes。
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 执行命令:orders_Update
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:order_id值:1
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:order_date价值:2009-10-9 0:00:00
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375,   参数:@sync_min_timestamp价值:86021
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_row_count值:跳过,因为未输入/输入输出
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375,   ;参数:@sync_force_write值:0
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 受影响的行:1
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 执行命令:orders_UpdateMetadata
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:order_id值:1
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_scope_local_id值:12
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_row_timestamp价值:86021
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_create_peer_key值:1
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_create_peer_timestamp价值:78011
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_update_peer_key值:1
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_update_peer_timestamp价值:78012
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_row_is_tombstone值:0
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_check_concurrency值:0
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 参数:@sync_row_count值:自未输入/输入输出后跳过
VERBOSE,WcfSvcHost,8,06 / 16/2010 13:40:41:375, 受影响的行:1
Oracle同步时的信息:
VERBOSE,WcfSvcHost,8,06 / 17/2010 07:50:46:703 ,    RowId:orders-9 UV:1,82028 CV:1,82027 IsTomb:False
VERBOSE,WcfSvcHost,8,06 / 17/2010 07:50:46:703,   ;使用PK更新行:ORDER_ID =" 9" on
INFO ,WcfSvcHost,8,06 / 17/2010 07:50:46:703,乐观变更申请失败
错误 ,WcfSvcHost,8,06 / 17/2010 07:50:46:703,枚举更改时捕获异常
Microsoft.Synchronization.Data.DbSyncException:找不到要为命令参数“ selectedRow”设置的值。请确保要同步的表的架构是一致的,并且确认此作用域的配置正确。
在Microsoft.Synchronization.Data.DbChangeHandler.SetColumnParameters(IDbCommand命令,SyncRowMetadata rowMetadata)
在Microsoft.Synchronization.Data.DbChangeHandler.ExecuteSelectRowCommand(SyncRowMetadata rowMetadata,DataTable& dataTable)
ERROR ,WcfSvcHost,8,06 / 17/2010 07:50:46:718,SelectRowCommand期间捕获异常
Microsoft.Synchronization.Data.DbSyncException:找不到要为命令参数“ selectedRow”设置的确。要确保要同步的表的架构是一致的,并且确认此作用域的配置正确。
在Microsoft.Synchronization.Data.DbChangeHandler.SetColumnParameters(IDbCommand命令,SyncRowMetadata rowMetadata)
在Microsoft.Synchronization.Data.DbChangeHandler.ExecuteSelectRowCommand(SyncRowMetadata rowMetadata,DataTable& dataTable)
在Microsoft.Synchronization.Data.DbChangeHandler.ApplyUpdate()
VERBOSE,WcfSvcHost,8,06 / 17/2010 07:50:46:718,   提高应用元数据失败的事件
Oracle数据库时,ApplyChangeFailed不会被触发,而是直接触发ApplyMetadataFailed。
不知道是什么原因?
从Sql Server 2005 到Sql Server 2005的同步(单向上传)是正常的,当目标数据库为Oracle时,(单向上传)不会触发ApplyChangeFailed事件。
SQL同步时的信息:
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:343, RowId: orders-1 UV: 1,78012 CV: 1,78011 IsTomb: False
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:343, Updating row with PK: order_id="1" on peer2
INFO , WcfSvcHost, 8, 06/16/2010 13:40:41:359, Optimistic change application failed
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359, Executing Command: orders_SelectRow
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359, Parameter: order_id Value: 1
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359, Parameter: @sync_scope_local_id Value: 12
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359,
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359, RowId: orders-1 UV: 1,78011 CV: 1,78011 IsTomb: False
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359, Checking for conflict.
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:359, Remote peer contains local change. Returning RemoteSupersedes.
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Executing Command: orders_Update
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: order_id Value: 1
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: order_date Value: 2009-10-9 0:00:00
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_min_timestamp Value: 86021
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_row_count Value: Skipped since Not Input/InputOutput
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_force_write Value: 0
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Rows affected: 1
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Executing Command: orders_UpdateMetadata
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: order_id Value: 1
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_scope_local_id Value: 12
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_row_timestamp Value: 86021
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_create_peer_key Value: 1
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_create_peer_timestamp Value: 78011
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_update_peer_key Value: 1
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_update_peer_timestamp Value: 78012
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_row_is_tombstone Value: 0
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_check_concurrency Value: 0
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Parameter: @sync_row_count Value: Skipped since Not Input/InputOutput
VERBOSE, WcfSvcHost, 8, 06/16/2010 13:40:41:375, Rows affected: 1
Oracle同步时的信息:
VERBOSE, WcfSvcHost, 8, 06/17/2010 07:50:46:703, RowId: orders-9 UV: 1,82028 CV: 1,82027 IsTomb: False
VERBOSE, WcfSvcHost, 8, 06/17/2010 07:50:46:703, Updating row with PK: ORDER_ID="9" on
INFO , WcfSvcHost, 8, 06/17/2010 07:50:46:703, Optimistic change application failed
ERROR , WcfSvcHost, 8, 06/17/2010 07:50:46:703, Caught exception while enumerating changes
Microsoft.Synchronization.Data.DbSyncException: 找不到要为命令参数“selectedRow”设置的值。请确保要同步的表的架构是一致的,并且确保此作用域的配置正确。
在 Microsoft.Synchronization.Data.DbChangeHandler.SetColumnParameters(IDbCommand command, SyncRowMetadata rowMetadata)
在 Microsoft.Synchronization.Data.DbChangeHandler.ExecuteSelectRowCommand(SyncRowMetadata rowMetadata, DataTable& dataTable)
ERROR , WcfSvcHost, 8, 06/17/2010 07:50:46:718, Caught Exception during SelectRowCommand
Microsoft.Synchronization.Data.DbSyncException: 找不到要为命令参数“selectedRow”设置的值。请确保要同步的表的架构是一致的,并且确保此作用域的配置正确。
在 Microsoft.Synchronization.Data.DbChangeHandler.SetColumnParameters(IDbCommand command, SyncRowMetadata rowMetadata)
在 Microsoft.Synchronization.Data.DbChangeHandler.ExecuteSelectRowCommand(SyncRowMetadata rowMetadata, DataTable& dataTable)
在 Microsoft.Synchronization.Data.DbChangeHandler.ApplyUpdate()
VERBOSE, WcfSvcHost, 8, 06/17/2010 07:50:46:718, Raising Apply Metadata Failed Event
Oracle数据库时,ApplyChangeFailed不会被触发,而是直接触发ApplyMetadataFailed。
不知道是什么原因?
这篇关于ApplyChangeFailed事件不被触发的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!