Какова функциональность таблицы __syncTransactions в базе данных SQL Compact - PullRequest
1 голос
/ 11 октября 2011

Кто-нибудь знает, для чего используется таблица __syncTransactions?Вот мой сценарий:

У нас мало клиентов, работающих на базе данных SQL Server Compact, синхронизирующихся с базой данных сервера SQL Server 2008 Express с использованием Sync Framework v3.5 в течение примерно года.Похоже, что для таблиц с большим количеством записей (т. Е.> 20000) синхронизация примерно занимает более минуты, а процессор также достигает 100%.

После включения ведения журнала трассировки синхронизации мне удалось сузитьзапрос, который был позади медленной синхронизации.Ниже приведен запрос, который проверяет вставки в клиентскую базу данных для одной из таблиц, содержащих ~ 70 000 записей:

выберите ut. * Из
(выберите ut0. * Из [tblPermissionGroupResourceRole] как ut0, где
(ut0 ._ sysTrackingContext <> 'a4e40127-4083-4b27-88d0-ef3aed4ae343' ИЛИ ​​ut0. _sysTrackingContext IS NULL)
И (ut0 ._ sysChangeTxBsn> = 948) = 91013 * И (ut0. _sysInsertTxBsn NOT IN (ВЫБРАТЬ SyncBsn ОТ __syncTransactions))

) как ut ВЛЕВО НАРУЖНОЕ СОЕДИНЕНИЕ
(выберите txcs0. * Из _ sysTxCommitSequence в качестве txcs0) в качестве txcs ON (ut. _sysInsertTxBsn = txcs ._ sysTxBsn) WHERE
COALESCE (txcs.
_sysTxCsn, ut ._ 68xs) (sysIn). _sysTxCsn, ut .__ sysInsertTxBsn) <= 9487480 </p>

Я выделил строку, выполнение которой занимает примерно 1 минуту.Причина в том, что таблица __syncTransaction содержит около 1200 записей, и из-за перекрестной ссылки с 70 000 нечетных записей в моей таблице tblPermissionGroupResourceRole запрос выполняется довольно медленно.

Поэтому мне нужно понять, как используется таблица __syncTransactions, поэтому яможно попробовать очистить записи из этой таблицы или есть ли другой способ решить мою проблему?

Любая помощь очень ценится.

С уважением, Сасанка.

1 Ответ

0 голосов
/ 13 октября 2011

Хм, похоже, никто не знает, для чего используется таблица __syncTransactions.Однако мне удалось найти решение моей проблемы.Пожалуйста, просмотрите следующий пост для решения:

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

...