Сохранение Akka.Net с MongoDB

Я пытаюсь реализовать Akka Persistence с помощью Mongodb и получаю сообщение об ошибке

"Method 'DeleteAsync' in type 
'Akka.Persistence.MongoDb.Snapshot.MongoDbSnapshotStore' from assembly 
'Akka.Persistence.MongoDb, Version=1.0.4.1, Culture=neutral, 
PublicKeyToken=null' does not have an implementation"

Вот моя конфигурация:

var config = ConfigurationFactory.ParseString(@"
    akka {
        persistence {
        publish-plugin-commands = on
        snapshot-store {
            plugin = ""akka.persistence.snapshot-store.mongodb""
            mongodb {
                class = ""Akka.Persistence.MongoDb.Snapshot.MongoDbSnapshotStore, Akka.Persistence.MongoDb""
                connection-string = ""mongodb://user:[email protected]:10083/DbName""
                collection = ""AkkaSnapshotStore""
            }
        }
        journal {
            plugin = ""akka.persistence.journal.mongodb""
            mongodb {
                class = ""Akka.Persistence.MongoDb.Journal.MongoDbJournal, Akka.Persistence.MongoDb""
                connection-string = ""mongodb://user:[email protected]:10083/DbName""
                collection = ""AkkaEventJournal""
            }
        }
    }
}");

Думаю, я правильно создал систему актеров:

https://gist.github.com/amarwadi/a887b26e14b0d42191b7

и я отправляю сообщение постоянному действующему лицу, и я продолжаю получать следующее сообщение бесконечно

[ERROR][1/2/2016 2:36:36 AM][Thread 0011][akka://example123/user/section-actor] Method 'DeleteAsync' in type 'Akka.Persistence.MongoDb.Snapshot.MongoDbSnapshotStore' from assembly 'Akka.Persistence.MongoDb, Version=1.0.4.1, Culture=neutral, PublicKeyToken=null' does not have an implementation.
Cause: System.TypeLoadException: Method 'DeleteAsync' in type 'Akka.Persistence.MongoDb.Snapshot.MongoDbSnapshotStore' from assembly 'Akka.Persistence.MongoDb, Version=1.0.4.1, Culture=neutral, PublicKeyToken=null' does not have an implementation.
at System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMarkHandle stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName, ObjectHandleOnStack type)
at System.RuntimeTypeHandle.GetTypeByName(String name, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark, IntPtr pPrivHostBinder, Boolean loadTypeFromPartialName)
at System.RuntimeType.GetType(String typeName, Boolean throwOnError, Boolean ignoreCase, Boolean reflectionOnly, StackCrawlMark& stackMark)
at System.Type.GetType(String typeName, Boolean throwOnError)
at Akka.Persistence.PersistenceExtension.CreatePlugin(String configPath, Func2 dispatcherSelector) at Akka.Persistence.PersistenceExtension.<>c__DisplayClass13_0.<SnapshotStoreFor>b__0() at System.Lazy1.CreateValue()
--- End of stack trace from previous location where exception was thrown ---
at System.Lazy`1.get_Value()
at Akka.Persistence.PersistenceExtension.SnapshotStoreFor(String snapshotPluginId)
at Akka.Persistence.Eventsourced.get_SnapshotStore()
at Akka.Persistence.Eventsourced.LoadSnapshot(String persistenceId, SnapshotSelectionCriteria criteria, Int64 toSequenceNr)
at Akka.Persistence.Eventsourced.b__76_0(Receive receive, Object message)
at Akka.Persistence.Eventsourced.AroundReceive(Receive receive, Object message)
at Akka.Actor.ActorCell.ReceiveMessage(Object message)
at Akka.Actor.ActorCell.Invoke(Envelope envelope)

person Anup Marwadi    schedule 02.01.2016    source источник


Ответы (1)


Согласно обновлению от разработчиков Akka.NET Persistence on MongoDB, это было нарушено в постоянстве в mongo с введением 1.0.5. Скоро это будет исправлено.

https://github.com/akkadotnet/Akka.Persistence.MongoDB/issues/12

person Anup Marwadi    schedule 03.01.2016