/// <exception cref="System.Exception"></exception> private void RunTestIterations() { if (!runOnOldJDK && IsOldJDK()) { Sharpen.Runtime.Out.WriteLine("BackupStressTest is too slow for regression testing on Java JDKs < 1.4" ); return; } BackupStressIteration iteration = new BackupStressIteration(); _objectContainer.Store(iteration); _objectContainer.Commit(); Thread backupThread = StartBackupThread(); for (int i = 1; i <= Iterations; i++) { for (int obj = 0; obj < Objects; obj++) { _objectContainer.Store(new BackupStressItem("i" + obj, i)); _commitCounter++; if (_commitCounter >= Commits) { _objectContainer.Commit(); _commitCounter = 0; } } iteration.SetCount(i); _objectContainer.Store(iteration); _objectContainer.Commit(); } _noMoreBackups = true; backupThread.Join(); }
/// <exception cref="System.Exception"></exception> private void RunTestIterations() { if (!runOnOldJDK && IsOldJDK()) { Sharpen.Runtime.Out.WriteLine("BackupStressTest is too slow for regression testing on Java JDKs < 1.4" ); return; } BackupStressIteration iteration = new BackupStressIteration(); _objectContainer.Store(iteration); _objectContainer.Commit(); Thread backupThread = StartBackupThread(); for (int i = 1; i <= Iterations; i++) { for (int obj = 0; obj < Objects; obj++) { _objectContainer.Store(new BackupStressItem("i" + obj, i)); _commitCounter++; if (_commitCounter >= Commits) { _objectContainer.Commit(); _commitCounter = 0; } } iteration.SetCount(i); _objectContainer.Store(iteration); _objectContainer.Commit(); } _noMoreBackups = true; backupThread.Join(); }
/// <exception cref="System.IO.IOException"></exception> private void CheckBackups() { Stdout("BackupStressTest"); Stdout("Backups created: " + _backups); for (int i = 1; i < _backups; i++) { Stdout("Backup " + i); IObjectContainer container = Db4oEmbedded.OpenFile(Config(), BackupFile(i)); try { Stdout("Open successful"); IQuery q = container.Query(); q.Constrain(typeof(BackupStressIteration)); BackupStressIteration iteration = (BackupStressIteration)q.Execute().Next(); int iterations = iteration.GetCount(); Stdout("Iterations in backup: " + iterations); if (iterations > 0) { q = container.Query(); q.Constrain(typeof(BackupStressItem)); q.Descend("_iteration").Constrain(iteration.GetCount()); IObjectSet items = q.Execute(); Assert.AreEqual(Objects, items.Count); while (items.HasNext()) { BackupStressItem item = (BackupStressItem)items.Next(); Assert.AreEqual(iterations, item._iteration); } } } finally { container.Close(); } Stdout("Backup OK"); } Stdout("BackupStressTest " + _backups + " files OK."); for (int i = 1; i <= _backups; i++) { DeleteFile(BackupFile(i)); } }