我正在尝试将现有的(演示)项目从Akka.Net 1.0.8升级到更新的(1.3.2或其他)。
我坚持要加载SQL服务器持久性。我采取了以下步骤:
结果:
这是我使用的HOCON配置:
akka.persistence{
journal {
plugin = "akka.persistence.journal.sql-server"
sql-server {
# qualified type name of the SQL Server persistence journal actor
class = "Akka.Persistence.SqlServer.Journal.SqlServerJournal, Akka.Persistence.SqlServer"
# dispatcher used to drive journal actor
plugin-dispatcher = "akka.actor.default-dispatcher"
# connection string used for database access
connection-string = "Data Source=(LocalDB)\\MSSQLLocalDB;Initial Catalog=AkkaPersistence;Integrated Security=True"
# default SQL commands timeout
connection-timeout = 30s
# SQL server schema name to table corresponding with persistent journal
schema-name = dbo
# SQL server table corresponding with persistent journal
table-name = EventJournal
# should corresponding journal table be initialized automatically
auto-initialize = on
# timestamp provider used for generation of journal entries timestamps
timestamp-provider = "Akka.Persistence.Sql.Common.Journal.DefaultTimestampProvider, Akka.Persistence.Sql.Common"
# metadata table
metadata-table-name = Metadata
}
}
snapshot-store {
plugin = "akka.persistence.snapshot-store.sql-server"
sql-server {
# qualified type name of the SQL Server persistence journal actor
class = "Akka.Persistence.SqlServer.Snapshot.SqlServerSnapshotStore, Akka.Persistence.SqlServer"
# dispatcher used to drive journal actor
plugin-dispatcher = "akka.actor.default-dispatcher"
# connection string used for database access
connection-string = "Data Source=(LocalDB)\\MSSQLLocalDB;Initial Catalog=AkkaPersistence;Integrated Security=True"
# default SQL commands timeout
connection-timeout = 30s
# SQL server schema name to table corresponding with persistent journal
schema-name = dbo
# SQL server table corresponding with persistent journal
table-name = SnapshotStore
# should corresponding journal table be initialized automatically
auto-initialize = on
}
}
}
有没有办法解决加载HOCON配置的问题?
答案 0 :(得分:1)
麻烦在于Akka.Persistence.SqlServer中使用的SQL在1.0.8和1.3.2之间发生了显着变化。
恕我直言,如果它只是一个演示应用程序,请删除并重新创建该表。这是最简单的路线。
否则,您将不得不编写一个迁移脚本,以便从1.0.8格式转换为1.3.2中的稳定格式:https://github.com/akkadotnet/Akka.Persistence.SqlServer#table-schema