locked
Batching support in dbpeersyncprovider RRS feed

  • Question

  •  

    I have table which has 2G data when i transfer the data using sync i get System.OutOfMemoryException: Exception of type 'System.OutOfMemoryException' was thrown.
       at System.Data.Common.Int32Storage.SetCapacity(Int32 capacity)
       at System.Data.RecordManager.set_RecordCapacity(Int32 value)
       at System.Data.RecordManager.GrowRecordCapacity()
       at System.Data.RecordManager.NewRecordBase()
       at System.Data.DataTable.NewRecordFromArray(Object[] value)
       at System.Data.DataTable.LoadDataRow(Object[] values, Boolean fAcceptChanges)
       at System.Data.ProviderBase.SchemaMapping.LoadDataRow()
       at System.Data.Common.DataAdapter.FillLoadDataRow(SchemaMapping mapping)
       at System.Data.Common.DataAdapter.FillFromReader(DataSet dataset, DataTable datatable, String srcTable, DataReaderContainer dataReader, Int32 startRecord, Int32 maxRecords, DataColumn parentChapterColumn, Object parentChapterValue)
       at System.Data.Common.DataAdapter.Fill(DataTable[] dataTables, IDataReader dataReader, Int32 startRecord, Int32 maxRecords)
       at System.Data.Common.DataAdapter.Fill(DataTable dataTable, IDataReader dataReader)
       at Microsoft.Synchronization.Data.Peer.SyncDbAdapter.FillFromReader(DataTable dataTable, IDataReader dataReader)
       at Microsoft.Synchronization.Data.Peer.DbPeerSyncProvider.EnumerateChangesInternal(SyncScopeMetadata scopeMetadata)
       at Microsoft.Synchronization.Data.Peer.DbPeerSyncProvider.GetChanges(SyncScopeMetadata scopeMetadata, PeerDataSyncSession PeerDataSyncSession)

     

    The error is very valid because i have only 4G ram outof 3G only available.

     

    Just wondering how hard it to add BATCHING support I dont see any batching parameter any of DBPEERSYNCPROVIDER.

    • Moved by Max Wang_1983 Friday, April 22, 2011 7:47 PM forum consolidation (From:SyncFx - Microsoft Sync Framework Database Providers [ReadOnly])
    Thursday, March 27, 2008 7:28 PM

Answers

  •  

    yeah, Batching is one of the features we are considering for next release of the providers.

     

    thanks

    Yunwen

    Tuesday, May 13, 2008 12:05 AM
    Moderator

All replies

  • DbPeerSyncProvider does not support batching in V1.0. Does your scenario require peer to peer? If it is client\server then you might consider SqlCeClientSyncProvider\DbServerSyncProiver where the server provider does support batching.

    Thanks

    Friday, March 28, 2008 6:43 PM
  • We always want to sync between 2 or more Sql servers,  the only solution for this situation from syncframework is PeerSyncProvider and hence it is lacking the support of batching.  I do see the importance of batching support in dbpeersyncprovider...Do you guys planning to support in this provider?

    Saturday, March 29, 2008 9:59 PM
  •  

    yeah, Batching is one of the features we are considering for next release of the providers.

     

    thanks

    Yunwen

    Tuesday, May 13, 2008 12:05 AM
    Moderator