Closed TraGicCode closed 4 years ago
As a side note, our automation scripts seem to have have corrupted the database which is definitely not ideal. Could this be related to the bugs introduced by #2000 ?
2020-06-01 00:18:03.9566|4|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:18:04.0326|4|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:18:04.0416|4|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:18:04.2136|1|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:18:04.2326|1|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:18:04.2326|1|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:19:05.2080|4|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:19:05.2670|4|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:19:05.2790|4|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:19:05.4340|1|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:19:05.4520|1|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:19:05.4520|1|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:21:20.1130|4|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:21:20.1710|4|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:21:20.1819|4|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:21:20.3229|1|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:21:20.3410|1|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:21:20.3459|1|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:23:41.6377|4|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:23:41.6957|4|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:23:41.7067|4|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:23:41.8417|1|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:23:41.8587|1|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:23:41.8587|1|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:26:09.9836|4|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase(JET_SESID sesid, String database, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
2020-06-01 00:26:10.0456|4|Error|Raven.Database.Server.RavenDBOptions|Found errors in the system database while loading it for the first time.
This is recoverable error, since we will simply ingore transactions after the faulted one.
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
2020-06-01 00:26:10.0577|4|Error|Raven.Database.DocumentDatabase|Could not initialize transactional storage, not creating database
System.InvalidOperationException: Could not open transactional storage: C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data ---> Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
at Microsoft.Isam.Esent.Interop.Api.JetAttachDatabase2(JET_SESID sesid, String database, Int32 maxPages, AttachDatabaseGrbit grbit)
at Raven.Storage.Esent.TransactionalStorage.EnsureDatabaseIsCreatedAndAttachToDatabase()
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
--- End of inner exception stack trace ---
at Raven.Storage.Esent.TransactionalStorage.Initialize(IUuidGenerator uuidGenerator, OrderedPartCollection`1 documentCodecs, Action`1 putResourceMarker, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase.DocumentDatabaseInitializer.InitializeTransactionalStorage(IUuidGenerator uuidGenerator, Action`2 onErrorAction)
at Raven.Database.DocumentDatabase..ctor(InMemoryRavenConfiguration configuration, DocumentDatabase systemDatabase, TransportState recievedTransportState, Action`2 onError)
2020-06-01 00:26:10.1906|1|Warn|Raven.Storage.Esent.TransactionalStorage|Could not recover database C:\ProgramData\Particular\ServiceControl\Particular.ServiceControl\DB\Data, will try opening it one last time. If that doesn't work, try using esentutl
Microsoft.Isam.Esent.Interop.EsentDatabaseDirtyShutdownException: Database was not shutdown cleanly. Recovery must first be run to properly complete database operations for the previous shutdown.
@TraGicCode The files should not be locked if the SC processes exits so I'm wondering which process is then locking the file.
Have you excluded the database folder from virus scanning?
@TraGicCode The files should not be locked if the SC processes exits so I'm wondering which process is then locking the file.
Have you excluded the database folder from virus scanning?
Hey Ramon,
When I downgraded to 4.8.0 the problem went away. Then, upgrading back to 4.9.0 I was able to reproduce the issue. I’m wondering if when u stop the servicecontrol instance on 4.9.0 of its actually stopping the process right away. I can check this in a bit
Hey @ramonsmits ,
that looks to be the issue. When you stop the servicecontrol instance in 4.9.0 the windows service stops, the status shows stopped in the service control management ui, but the process hangs around for a bit.
Was this intentional or a bug? With this behavior it will be a PITA to actually attempt to orchestrate starting and stopping servicecontrol with any sort of automation.
I skimmed through the changeset and didn't see anything explicitly related to servicecontrol stopping. I think this is related to the messed up logging that is causing the service to behave differently with the windows service control manager :/
https://github.com/Particular/ServiceControl/compare/4.8.0...4.9.0
@TraGicCode Just be to clear, you also have this issue with 4.10.0 right? So, since 4.9.0?
I tested this locally and I see an almost 30 second delay.
Scanning the code I think the current version is executing the executable as a regular console app and not as a windows service. I'm going go validate this but I think that is what is happening.
Another thing I noticed is that the application is not properly responding to CTRL+C when running from the commandline.
@TraGicCode Just be to clear, you also have this issue with 4.10.0 right? So, since 4.9.0?
Yes. all newer versions
Another thing I noticed is that the application is not properly responding to CTRL+C when running from the commandline.
okay cool so it should get fixed when the regression of #2017 is resolved.
@TraGicCode I validated my assumption and it was correct. It is run as a console instead as a service. While performing cleanup to get it to run I noticed logging issues too. Both are addressed in this PR:
@TraGicCode We reverted the hosting behavior of 4.9.0 in todays release of 4.10.2. Instances should start/stop as expected again.
Issue resolved. Thanks @ramonsmits !
Hey Guys,
It looks like there is something strange that got introduced in v4.9.0. When you try and start an instance a few seconds after you stopped it it will fail to start. Below is the servicecontrol log that contains nothing but info.
Looking at the ravendb logs i see the following errors which seem to be related to the issue.
It would be awesome if someone can also verify this behavior.