Acessar limite de inserção de transação de banco de dados

Existe um limite para a quantidade de inserções que você pode fazer em uma transação do Access antes de confirmar ou antes que o Access / Jet exiba um erro?

Atualmente estou executando o código a seguir na esperança de determinar o que é este máximo.

OleDbConnection cn =
                new OleDbConnection(
                    @"Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\temp\myAccessFile.accdb;Persist Security Info=False;");
            try
            {
                cn.Open();
                oleCommand = new OleDbCommand("BEGIN TRANSACTION", cn);               
                oleCommand.ExecuteNonQuery();    
                oleCommand.CommandText =
                            "insert into [table1] (name) values ('1000000000001000000000000010000000000000')";

                for (i = 0; i < 25000000; i++)
                {
                    oleCommand.ExecuteNonQuery();
                }                

                oleCommand.CommandText = "COMMIT";
                oleCommand.ExecuteNonQuery();
            }
            catch (Exception ex)
            {

            }
            finally
            {
                try
                {

                    oleCommand.CommandText = "COMMIT";
                    oleCommand.ExecuteNonQuery();                    
                }

                catch{}

                if (cn.State != ConnectionState.Closed)
                {
                    cn.Close();
                }
            }

O erro que recebi em um aplicativo de produção quando alcancei 2.333.920 inserções em uma única transação não confirmada foi: "A contagem de bloqueios de compartilhamento de arquivos foi excedida. Aumente a entrada de registro MaxLocksPerFile". Desativar transações corrigiu esse problema.

questionAnswers(2)

yourAnswerToTheQuestion