Skip to content

Expiration fails for large ServiceControl instances #387

@gbiellem

Description

@gbiellem

From Google Groups... (Desk Case 7173)

I created the following ServiceControl.exe.config and placed it in ServiceControl install directory:

<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<configuration>
  <appSettings>
        <add key="ServiceControl/DbPath" value="e:\Particular\ServiceControl\localhost-33333" />
    <add key="ServiceControl/ExpirationProcessTimerInSeconds" value="120" />
    <add key="ServiceControl/HoursToKeepMessagesBeforeExpiring" value="240" />
    <add key="ServiceControl/ExposeRavenDB" value="true" />
  </appSettings>
</configuration>

By doing this I thought I was telling ServiceControl to only store 10 days of recent history instead of the default 30 days, thus cutting down on the amount of storage that the internal RavenDB would need. However, I am a couple weeks in and the data file continues to grow from 20 to 50 to 80 and now 125GB.

Logs show this:

2014-10-03 07:11:25.0096|915|Error|DocumentsExpiryLogger|Error when trying to find expired documents
System.OperationCanceledException: The operation was canceled.
   at System.Threading.CancellationToken.ThrowIfCancellationRequested()
   at Raven.Database.DocumentDatabase.<>c__DisplayClass8f.<Query>b__84(IStorageActionsAccessor actions)
   at Raven.Storage.Esent.TransactionalStorage.ExecuteBatch(Action`1 action, EsentTransactionContext transactionContext)
   at Raven.Storage.Esent.TransactionalStorage.Batch(Action`1 action)
   at Raven.Database.DocumentDatabase.Query(String index, IndexQuery query, CancellationToken externalCancellationToken, Action`1 headerInfo, Action`1 onResult)
   at Raven.Database.DocumentDatabase.Query(String index, IndexQuery query, CancellationToken token)
   at ServiceControl.Infrastructure.RavenDB.Expiration.ExpiredDocumentsCleaner.TimerCallback(Object state) in c:\BuildAgent\work\b7f882efc2cd360b\src\ServiceControl\Infrastructure\RavenDB\Expiration\ExpiredDocumentsCleaner.cs:line 69

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions