/ / Jaka jest funkcjonalność tabeli __syncTransactions w bazie danych SQL Compact - c #, synchronizacja, microsoft-sync-framework

Jaka jest funkcjonalność tabeli __syncTransactions w bazie danych SQL Compact - c #, sync, microsoft-sync-framework

Czy ktoś wie, do czego służy tabela __syncTransactions? Oto mój scenariusz:

Mamy niewielu klientów działających na SQL Server Compactsynchronizacja bazy danych z bazą danych serwera SQL Server 2008 Express za pomocą Sync Framework v3.5 od około roku. Wydaje się, że w przypadku tabel z dużą liczbą rekordów (tj.> 20000) synchronizacja zajmuje z grubsza więcej niż minutę, a procesor również osiąga 100%.

Po włączeniu rejestrowania śledzenia synchronizacji udało mi sięzawęź zapytanie dotyczące powolnej synchronizacji. Poniżej znajduje się zapytanie sprawdzające wstawienia do bazy danych klienta dla jednej z tabel, która zawiera ~ 70 000 rekordów:

Wybierz ut. * od
( Wybierz ut0. * od [tblPermissionGroupResourceRole] jako ut0 gdzie
(ut0._sysTrackingContext <> "a4e40127-4083-4b27-88d0-ef3aed4ae343" LUB ut0._sysTrackingContext IS NULL )
ORAZ (ut0._sysChangeTxBsn> = 9486853)
I (ut0.
_sysInsertTxBsn NOT IN (WYBIERZ SyncBsn OD __syncTransactions))</ strong>

) jako ut DOŁĄCZ DO LEWEGO ZEWNĘTRZNEGO
( Wybierz txcs0. * od _sysTxCommitSequence as txcs0 ) jako txcs ON (ut._sysInsertTxBsn = txcs._sysTxBsn) GDZIE
WSPÓŁPRACA (txcs.
_sysTxCsn, ut._sysInsertTxBsn)> 9486853 I COALESCE (txcs._sysTxCsn, ut .__ sysInsertTxBsn) <= 9487480

Podkreśliłem linię, która zajmuje z grubsza 1minuta do wykonania. Powodem jest to, że tablica __syncTransaction zawiera około 1200 rekordów, a ze względu na odniesienie do 70 000 rekordów nieparzystych w mojej tabeli tblPermissionGroupResourceRole, zapytanie jest dość wolne.

Dlatego muszę zrozumieć, w jaki sposób używana jest tabela __syncTransactions, aby móc spróbować wyczyścić rekordy z tej tabeli lub czy istnieje inny sposób rozwiązania mojego problemu?

Każda pomoc jest doceniana.

Z poważaniem, Sasanka.

Odpowiedzi:

0 dla odpowiedzi № 1

Hmm, wygląda na to, że nikt nie wie, do czego służy tabela __syncTransactions. Udało mi się jednak znaleźć rozwiązanie mojego problemu. Zobacz następujący post dotyczący rozwiązania:

http://social.microsoft.com/Forums/is/syncdevdiscussions/thread/8325ef18-50af-4eaa-9df4-aa69d131406b