Exemple #1
0
 public void Dispose()
 {
     MyPalStorage.CloseDatabase();
     try
     {
         RemoveDBFiles();
     }
     catch (Exception e)
     {
         Console.WriteLine(" Error cleaning DB files: " + e.Message);
     }
 }
Exemple #2
0
 protected void CloseStorage()
 {
     MyPalStorage.CloseDatabase();
     _storage = null;
     try
     {
         RemoveDBFiles();
     }
     catch (Exception e)
     {
         Console.WriteLine(" Error cleaning DB files: " + e.Message);
     }
 }
Exemple #3
0
 public override void TearDown()
 {
     MyPalStorage.CloseDatabase();
     _storage = null;
     try
     {
         RemoveDBFiles();
     }
     catch (Exception e)
     {
         Console.WriteLine(" Error cleaning DB files: " + e.Message);
     }
 }
Exemple #4
0
 private void TestShutdown(MainFrame mainFrame)
 {
     try
     {
         Console.WriteLine("Closing MainFrame");
         mainFrame.TestShutdown();
         Console.WriteLine("Closing database");
         MyPalStorage.CloseDatabase();
     }
     finally
     {
         MainFrame._uiAsyncProcessor.QueueEndOfWork();
     }
     MainFrame._uiAsyncProcessor.Dispose();
 }
Exemple #5
0
        [Test] public void StressTest()
        {
            for (int i = 0; i < 100; i++)
            {
                RemoveDBFiles();
                MyPalStorage.CreateDatabase();
                MyPalStorage.OpenDatabase();
                _storage = MyPalStorage.Storage;

                MyPalStorage.CloseDatabase();
                _storage = null;
                try
                {
                    RemoveDBFiles();
                }
                catch (Exception e)
                {
                    Console.WriteLine(" Error cleaning DB files: " + e.Message);
                }
            }
        }
Exemple #6
0
        public void Run()
        {
            _propTypes       = _db.GetTable("PropTypes");
            _resTypes        = _db.GetTable("ResourceTypes");
            _intProps        = _db.GetTable("IntProps");
            _stringProps     = _db.GetTable("StringProps");
            _longStringProps = _db.GetTable("LongStringProps");
            _stringListProps = _db.GetTable("StringListProps");
            _dateProps       = _db.GetTable("DateProps");
            _blobProps       = _db.GetTable("BlobProps");
            _doubleProps     = _db.GetTable("DoubleProps");
            _boolProps       = _db.GetTable("BoolProps");
            _resources       = _db.GetTable("Resources");
            _links           = _db.GetTable("Links");

            try
            {
                ShowProgress("Processing property types...");
                RepairPropTypes();
                ShowProgress("Processing resource types...");
                RepairResourceTypes();

                ShowProgress("Processing resources...");
                RepairResources();

                ShowProgress("Processing IntProps...");
                RepairProps(_intProps, PropDataType.Int);
                ShowProgress("Processing StringProps...");
                RepairProps(_stringProps, PropDataType.String);
                ShowProgress("Processing LongStringProps...");
                RepairProps(_longStringProps, PropDataType.LongString);
                ShowProgress("Processing DateProps...");
                RepairProps(_dateProps, PropDataType.Date);
                ShowProgress("Processing BlobProps...");
                RepairProps(_blobProps, PropDataType.Blob);
                ShowProgress("Processing DoubleProps...");
                RepairProps(_doubleProps, PropDataType.Double);
                ShowProgress("Processing StringListProps...");
                RepairProps(_stringListProps, PropDataType.StringList);
                ShowProgress("Processing BoolProps...");
                RepairProps(_boolProps, PropDataType.Bool);
                ShowProgress("Processing links...");
                RepairLinks();

                if (_fixErrors)
                {
                    ShowProgress("Repairing BlobFileSystem...");
                    _db.RepairBlobFileSystem();
                }
            }
            catch (Exception e)
            {
                ShowProgress("Fatal error during repair: " + e.Message);
                _repairException = e;
                _errorCount++;
            }

            ShowProgress("Closing database...");
            _db.Shutdown();

            if (_errorCount <= _fixCount)
            {
                MyPalStorage.OpenDatabase();
                try
                {
                    RepairRestrictions();

                    MyPalStorage.CloseDatabase();
                }
                catch (StorageException e)
                {
                    ShowProgress(e.ToString());
                }
                finally
                {
                    ShowProgress("done.");
                }
            }
            else
            {
                ShowProgress("Link restrictions were not checked because errors were found on earlier stages");
            }

            ShowProgress("Processed {0} resources, {1} properties and {2} links",
                         _resCount, _propCount, _linkCount);
            if (_errorCount == 0)
            {
                ShowProgress("No errors found");
            }
            else
            {
                ShowProgress("{0} errors found, {1} errors fixed", _errorCount, _fixCount);
            }
        }
Exemple #7
0
 public void Close()
 {
     MyPalStorage.CloseDatabase();
 }
Exemple #8
0
 protected void ReopenStorage()
 {
     MyPalStorage.CloseDatabase();
     MyPalStorage.OpenDatabase();
     _storage = MyPalStorage.Storage;
 }