今天发现发布的应用无法读取用户信息视图,本地设计器中工作正常。
查看服务器日志,有如下报错,疑似Sqlite数据库文件损坏。如何解决
2024-12-02 09:57:11.286 [INFO ] - 2024-12-02T09:57:11.2861853+08:00 ----------- InitialServerInfosAsync
2024-12-02 09:57:11.290 [INFO ] - InitialServerInfos
2024-12-02 09:57:11.309 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\Forguncy_ServerInfos infoStr.length:90
2024-12-02 09:57:11.311 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\ApplicationSettingsServerInfo infoStr.length:100
2024-12-02 09:57:11.314 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\PageServerInfo infoStr.length:93582
2024-12-02 09:57:11.368 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\CommandServerInfo infoStr.length:57531
2024-12-02 09:57:11.416 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\TableServerInfo infoStr.length:370
2024-12-02 09:57:11.420 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\PluginServerInfo infoStr.length:1584
2024-12-02 09:57:11.423 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\ServerCommandServerInfo infoStr.length:200
2024-12-02 09:57:11.424 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\TaskScheduleServerInfo infoStr.length:60
2024-12-02 09:57:11.424 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\ProcessServerInfo infoStr.length:45
2024-12-02 09:57:11.425 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\ReportServerInfo infoStr.length:70
2024-12-02 09:57:11.426 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\JavaAdapterServerInfo infoStr.length:49
2024-12-02 09:57:11.448 [INFO ] - Init ServerInfo
2024-12-02 09:57:12.437 [INFO ] - End Configure
2024-12-02 09:57:12.437 [INFO ] - ForguncyServer Startup initialized.
2024-12-02 09:57:12.452 [INFO ] - ReadServerInfo: C:\Users\Public\Documents\ForguncyServer\pd\Files\TableServerInfo infoStr.length:370
2024-12-02 09:57:34.928 [INFO ] - GetAllUserColumnInfoAsync
2024-12-02 09:57:34.945 [INFO ] - Begin Add UserInfoView To DB: 6db454c0-531c-4395-9122-921a18942902
2024-12-02 09:57:35.031 [ERROR] - Sql execute exception:
2024-12-02 09:57:35.047 [ERROR] - {
"SqliteErrorCode": 11,
"SqliteExtendedErrorCode": 11,
"IsTransient": false,
"SqlState": null,
"BatchCommand": null,
"ErrorCode": -2147467259,
"Message": "SQLite Error 11: 'database disk image is malformed'.",
"Data": {
"$type": "System.Collections.ListDictionaryInternal, System.Private.CoreLib"
},
"InnerException": null,
"HelpLink": null,
"Source": "Microsoft.Data.Sqlite",
"HResult": -2147467259,
"StackTrace": " at Microsoft.Data.Sqlite.SqliteException.ThrowExceptionForRC(Int32 rc, sqlite3 db)
at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior)
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteNonQuery()
at System.Data.Common.DbCommand.ExecuteNonQueryAsync(CancellationToken cancellationToken)
--- End of stack trace from previous location ---
at GrapeCity.Forguncy.DataBaseApi.AdoNetExtensions.PocessAsync[T](DbCommand command, Func`1 processFunc, List`1 logs, String method)
at SqliteWrapper.Sqlite.DeleteRowAsync(String tableSchema, String tableName, List`1 query)"
}
CurrentMethodName: DeleteRowAsync
2024-12-02 09:57:35.049 [ERROR] - Sql statement:
2024-12-02 09:57:35.049 [ERROR] - DELETE FROM [main].[FGC_UserInfoTable] WHERE "FGC_UserName"= @QP0;
2024-12-02 09:57:35.062 [WARN ] - {
"ClassName": "System.AggregateException",
"Message": "One or more errors occurred.",
"Data": null,
"InnerException": {
"$type": "Microsoft.Data.Sqlite.SqliteException, Microsoft.Data.Sqlite",
"SqliteErrorCode": 11,
"SqliteExtendedErrorCode": 11,
"IsTransient": false,
"SqlState": null,
"BatchCommand": null,
"ErrorCode": -2147467259,
"Message": "SQLite Error 11: 'database disk image is malformed'.",
"Data": {
"$type": "System.Collections.ListDictionaryInternal, System.Private.CoreLib"
},
"InnerException": null,
"HelpLink": null,
"Source": "Microsoft.Data.Sqlite",
"HResult": -2147467259,
"StackTrace": " at Microsoft.Data.Sqlite.SqliteException.ThrowExceptionForRC(Int32 rc, sqlite3 db)
at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior)
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteNonQuery()
at System.Data.Common.DbCommand.ExecuteNonQueryAsync(CancellationToken cancellationToken)
--- End of stack trace from previous location ---
at GrapeCity.Forguncy.DataBaseApi.AdoNetExtensions.PocessAsync[T](DbCommand command, Func`1 processFunc, List`1 logs, String method)
at SqliteWrapper.Sqlite.DeleteRowAsync(String tableSchema, String tableName, List`1 query)
at Forguncy.DataSourceBase.DeleteRowAsync(String tableSchema, String tableName, List`1 queryInfos)
at ForguncyDataAccess.DataAccess.DeleteAsync(String connectionStr, String type, String tableSchema, String tableName, List`1 queryInfos)
at ForguncyDataAccess.DataAccess.DeleteAsync(String connectionStr, String type, String tableSchema, String tableName, Dictionary`2 queryInfos)
at ForguncyDataAccess.DataAccess.<>c__DisplayClass51_0.<<Delete>b__0>d.MoveNext()"
},
"HelpURL": null,
"StackTraceString": " at System.Threading.Tasks.Task.ThrowIfExceptional(Boolean includeTaskCanceledExceptions)
at System.Threading.Tasks.Task.Wait(Int32 millisecondsTimeout, CancellationToken cancellationToken)
at System.Threading.Tasks.Task.Wait()
at ForguncyDataAccess.DataAccess.Delete(String connectionStr, String type, String tableSchema, String tableName, Dictionary`2 queryInfos)
at Forguncy.Server2.Services.UserManagementViewService.UpdateTableByUpdateInfo(DataAccess dataAccess, String tableSchema, String tableName, String connectionStr, String dbType, UpdateInfo info)
at av.c(DataAccess a, DataTable b, String c, LinkedDBInfo d)
at av.EnsureUserInfoViewToDatabaseTaskAsync(LinkedDBInfo dbInfo, DataAccess dataAccess, String key, Boolean allRequestColumnLoaded)
at av.WaitAsync(DataAccess dataAccess, IEnumerable`1 tableNames, IEnumerable`1 requestColumns)
at Forguncy.Server2.ForguncyServerDataAccess.HandlingSpecialColumnQueryInfosAsync(QueryInfo queryInfo, String tableName)
at Forguncy.Server2.ForguncyServerDataAccess.PrepareForSelectingAsync(List`1 columnBindingInfos, ISqlCondition selectCondition, OrderBySqlCondition orderByCondition, String tableName)
at ForguncyDataAccess.DataAccess.SelectAsync(List`1 columnBindingInfos, ISqlCondition selectCondition, TopSqlConditionBase topCondition, String tableName, OrderBySqlCondition orderByCondition, OffsetSqlCondition offsetCondition, Boolean useGroupBy)
at Forguncy.Server2.ForguncyServerDataAccess.SelectAsync(List`1 columnBindingInfos, ISqlCondition selectCondition, TopSqlConditionBase topCondition, String tableName, OrderBySqlCondition orderByCondition, OffsetSqlCondition offsetCondition, Boolean useGroupBy)
at ForguncyDataAccess.DataAccess.GetDetailDataTableAsync(List`1 columnBindingInfos, ISqlCondition sqlCondition, TopSqlConditionBase topCondition, OrderBySqlCondition orderByCondition, List`1 primaryKeys, OffsetSqlCondition offsetCondition, Boolean distinct, Boolean ensureOrderBy)
at ForguncyDataAccess.DataAccess.GetDataTableAsync(List`1 columnBindingInfos, ISqlCondition sqlCondition, TopSqlConditionBase topCondition, List`1 primaryKeys, OrderBySqlCondition orderByCondition, OffsetSqlCondition offsetCondition, Boolean distinct, Boolean ensureOrderBy)
at Forguncy.Server2.ForguncyServerDataAccess.GetDataTableAsync(List`1 columnBindingInfos, ISqlCondition sqlCondition, TopSqlConditionBase topCondition, List`1 primaryKeys, OrderBySqlCondition orderByCondition, OffsetSqlCondition offsetCondition, Boolean distinct, Boolean ensureOrderBy)
at q.GetTableDataAsync(String tableName, IEnumerable`1 bindingInfosObj, Object queryCondition, Object orderBy, Object top, Boolean needUpdateQueryCondition, Object offset)
at Forguncy.Model.Commands.SetParameterCommand.GetTableDataAsync(IServerCommandExecuteContext dataContext, String tableName, IEnumerable`1 bindingInfos, Object queryCondition, Object orderBy, Object top, Object offset)
at Forguncy.Model.Commands.SetParameterCommand.ExecuteAsync(IServerCommandExecuteContext dataContext)
at db.ExecuteAsync(List`1 commandList, IServerCommandExecuteContext commandContext)
at db.ExecuteForguncyServerCommandActionAsync(String commandName, Boolean isServerCommand, IServerCommandExecuteContext executeContext, Boolean canInvokePrivateServerCommands, Boolean canInvokeDisableCommand, Boolean isIgnoreServerCommandAuth)",
"RemoteStackTraceString": null,
"RemoteStackIndex": 0,
"ExceptionMethod": null,
"HResult": -2146233088,
"Source": "System.Private.CoreLib",
"WatsonBuckets": null,
"InnerExceptions": {
"$type": "System.Exception[], System.Private.CoreLib",
"$values": [
{
"$type": "Microsoft.Data.Sqlite.SqliteException, Microsoft.Data.Sqlite",
"SqliteErrorCode": 11,
"SqliteExtendedErrorCode": 11,
"IsTransient": false,
"SqlState": null,
"BatchCommand": null,
"ErrorCode": -2147467259,
"Message": "SQLite Error 11: 'database disk image is malformed'.",
"Data": {
"$type": "System.Collections.ListDictionaryInternal, System.Private.CoreLib"
},
"InnerException": null,
"HelpLink": null,
"Source": "Microsoft.Data.Sqlite",
"HResult": -2147467259,
"StackTrace": " at Microsoft.Data.Sqlite.SqliteException.ThrowExceptionForRC(Int32 rc, sqlite3 db)
at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior)
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteNonQuery()
at System.Data.Common.DbCommand.ExecuteNonQueryAsync(CancellationToken cancellationToken)
--- End of stack trace from previous location ---
at GrapeCity.Forguncy.DataBaseApi.AdoNetExtensions.PocessAsync[T](DbCommand command, Func`1 processFunc, List`1 logs, String method)
at SqliteWrapper.Sqlite.DeleteRowAsync(String tableSchema, String tableName, List`1 query)
at Forguncy.DataSourceBase.DeleteRowAsync(String tableSchema, String tableName, List`1 queryInfos)
at ForguncyDataAccess.DataAccess.DeleteAsync(String connectionStr, String type, String tableSchema, String tableName, List`1 queryInfos)
at ForguncyDataAccess.DataAccess.DeleteAsync(String connectionStr, String type, String tableSchema, String tableName, Dictionary`2 queryInfos)
at ForguncyDataAccess.DataAccess.<>c__DisplayClass51_0.<<Delete>b__0>d.MoveNext()"
}
}
}
2024-12-02 09:57:35.673 [INFO ] - GetAllUserColumnInfoAsync
2024-12-02 09:57:35.685 [INFO ] - Begin Add UserInfoView To DB: 6db454c0-531c-4395-9122-921a18942902
2024-12-02 09:57:35.727 [ERROR] - Sql execute exception:
2024-12-02 09:57:35.728 [ERROR] - {
"SqliteErrorCode": 11,
"SqliteExtendedErrorCode": 11,
"IsTransient": false,
"SqlState": null,
"BatchCommand": null,
"ErrorCode": -2147467259,
"Message": "SQLite Error 11: 'database disk image is malformed'.",
"Data": {
"$type": "System.Collections.ListDictionaryInternal, System.Private.CoreLib"
},
"InnerException": null,
"HelpLink": null,
"Source": "Microsoft.Data.Sqlite",
"HResult": -2147467259,
"StackTrace": " at Microsoft.Data.Sqlite.SqliteException.ThrowExceptionForRC(Int32 rc, sqlite3 db)
at Microsoft.Data.Sqlite.SqliteDataReader.NextResult()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader(CommandBehavior behavior)
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteReader()
at Microsoft.Data.Sqlite.SqliteCommand.ExecuteNonQuery()
at System.Data.Common.DbCommand.ExecuteNonQueryAsync(CancellationToken cancellationToken)
--- End of stack trace from previous location ---
at GrapeCity.Forguncy.DataBaseApi.AdoNetExtensions.PocessAsync[T](DbCommand command, Func`1 processFunc, List`1 logs, String method)
at SqliteWrapper.Sqlite.DeleteRowAsync(String tableSchema, String tableName, List`1 query)"
}
CurrentMethodName: DeleteRowAsync
2024-12-02 09:57:35.732 [ERROR] - Sql statement:
2024-12-02 09:57:35.732 [ERROR] - DELETE FROM [main].[FGC_UserInfoTable] WHERE "FGC_UserName"= @QP0;
|