找回密码
 立即注册

QQ登录

只需一步,快速开始

随风派派
金牌服务用户   /  发表于:2023-3-6 10:27  /   查看:3027  /  回复:10
20金币
在查询数据时经常卡,救助大佬帮我看看日志




forguncy.js?v=638035013340000000:29
forguncy.js?v=638035013340000000:29 执行点击命令 OrdererInv!P2 用时: 1013 毫秒
forguncy.js?v=638035013340000000:29 条件 用时: 1007 毫秒
forguncy.js?v=638035013340000000:29 判断: =AU2 等于 1 结果为 false
forguncy.js?v=638035013340000000:29 Else 用时: 1006 毫秒
forguncy.js?v=638035013340000000:29 条件 用时: 5 毫秒
forguncy.js?v=638035013340000000:29 判断: =BK2 不等于 %Null% 结果为 true 用时: 5 毫秒
forguncy.js?v=638035013340000000:29
forguncy.js?v=638035013340000000:29 执行值变更命令 search(OrdererInv!C2) 用时: 8 毫秒
forguncy.js?v=638035013340000000:29 [创建命令上下文变量]
forguncy.js?v=638035013340000000:29 创建变量 valueChangedReason = userInput
forguncy.js?v=638035013340000000:29 JavaScript命令 用时: 1 毫秒
forguncy.js?v=638035013340000000:29
jquery-3.6.0.min.js?v=638035013340000000:2          POST http://localhost:49362/Forguncy/Home/GetTableDataWithOffset 500 (Internal Server Error)
send @ jquery-3.6.0.min.js?v=638035013340000000:2
ajax @ jquery-3.6.0.min.js?v=638035013340000000:2
i.forguncyPost @ forguncy.js?v=638035013340000000:9
t.GetTableDataWithOffset @ forguncy.js?v=638035013340000000:35
t.queryDataFromServer @ spread.js?v=638035013340000000:131
(anonymous) @ forguncy.js?v=638035013340000000:62
(anonymous) @ forguncy.js?v=638035013340000000:65
(anonymous) @ forguncy.js?v=638035013340000000:65
(anonymous) @ forguncy.js?v=638035013340000000:35
c.success @ forguncy.js?v=638035013340000000:9
c @ jquery-3.6.0.min.js?v=638035013340000000:2
fireWith @ jquery-3.6.0.min.js?v=638035013340000000:2
l @ jquery-3.6.0.min.js?v=638035013340000000:2
(anonymous) @ jquery-3.6.0.min.js?v=638035013340000000:2
load (async)
send @ jquery-3.6.0.min.js?v=638035013340000000:2
ajax @ jquery-3.6.0.min.js?v=638035013340000000:2
i.forguncyPost @ forguncy.js?v=638035013340000000:9
t.GetRowCount @ forguncy.js?v=638035013340000000:35
r.GetRowCountFromServer @ forguncy.js?v=638035013340000000:65
r.GetRowCount @ forguncy.js?v=638035013340000000:65
r.RefeshRowCount @ forguncy.js?v=638035013340000000:65
r.fillData @ forguncy.js?v=638035013340000000:62
i.queryCommand @ forguncy.js?v=638035013340000000:112
i.execute @ forguncy.js?v=638035013340000000:112
r._executeSingleCommand @ forguncy.js?v=638035013340000000:104
(anonymous) @ forguncy.js?v=638035013340000000:104
s @ forguncy.js?v=638035013340000000:44
(anonymous) @ forguncy.js?v=638035013340000000:44
(anonymous) @ forguncy.js?v=638035013340000000:44
__awaiter @ forguncy.js?v=638035013340000000:44
r._executeFirstCommandInList @ forguncy.js?v=638035013340000000:104
(anonymous) @ forguncy.js?v=638035013340000000:104
(anonymous) @ forguncy.js?v=638035013340000000:15
(anonymous) @ forguncy.js?v=638035013340000000:15
setTimeout (async)
i.setTimeout @ forguncy.js?v=638035013340000000:15
t.doOperation @ forguncy.js?v=638035013340000000:15
(anonymous) @ forguncy.js?v=638035013340000000:15
Promise.then (async)
(anonymous) @ forguncy.js?v=638035013340000000:15
(anonymous) @ forguncy.js?v=638035013340000000:15
setTimeout (async)
i.setTimeout @ forguncy.js?v=638035013340000000:15
t.doOperation @ forguncy.js?v=638035013340000000:15
t.Push @ forguncy.js?v=638035013340000000:15
r._executeCommand @ forguncy.js?v=638035013340000000:104
r.excuteCommandFromWaitingQueque @ forguncy.js?v=638035013340000000:104
r.excuteCommand @ forguncy.js?v=638035013340000000:104
(anonymous) @ forguncy.js?v=638035013340000000:68
(anonymous) @ forguncy.js?v=638035013340000000:28
n.trigger @ forguncy.js?v=638035013340000000:28
r.trigger @ forguncy.js?v=638035013340000000:73
(anonymous) @ forguncy.js?v=638035013340000000:74
dispatch @ jquery-3.6.0.min.js?v=638035013340000000:2
v.handle @ jquery-3.6.0.min.js?v=638035013340000000:2
MetadataLoader.js?v=638035013340000000:623 /Forguncy/Home/GetTableDataWithOffset
Internal Server Error
Request Exception Happened-------------------------------
Path/Home/GetTableDataWithOffset
UserName:ADMIN
{
  "ClassName": "System.Data.SqlClient.SqlException",
  "Message": "Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding.",
  "Data": {
    "$type": "System.Collections.ListDictionaryInternal, System.Private.CoreLib",
    "HelpLink.ProdName": "Microsoft SQL Server",
    "HelpLink.ProdVer": "11.00.3128",
    "HelpLink.EvtSrc": "MSSQLServer",
    "HelpLink.EvtID": "-2",
    "HelpLink.BaseHelpUrl": "https://go.microsoft.com/fwlink",
    "HelpLink.LinkId": "20476",
    "SqlError 1": "System.Data.SqlClient.SqlError: Timeout expired.  The timeout period elapsed prior to completion of the operation or the server is not responding."
  },
  "InnerException": {
    "$type": "System.ComponentModel.Win32Exception, Microsoft.Win32.Primitives",
    "ClassName": "System.ComponentModel.Win32Exception",
    "Message": "等待的操作过时。",
    "Data": null,
    "InnerException": null,
    "HelpURL": null,
    "StackTraceString": null,
    "RemoteStackTraceString": null,
    "RemoteStackIndex": 0,
    "ExceptionMethod": null,
    "HResult": -2147467259,
    "Source": null,
    "WatsonBuckets": null,
    "NativeErrorCode": 258
  },
  "HelpURL": null,
  "StackTraceString": "   at System.Data.SqlClient.SqlCommand.<>c.<ExecuteDbDataReaderAsync>b__126_0(Task`1 result)
   at System.Threading.Tasks.ContinuationResultTaskFromResultTask`2.InnerInvoke()
   at System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext, ContextCallback callback, Object state)
--- End of stack trace from previous location ---
   at System.Threading.Tasks.Task.ExecuteWithThreadLocal(Task& currentTaskSlot, Thread threadPoolThread)
--- End of stack trace from previous location ---
   at Forguncy.DataSourceBase.FillTableAsync(String commandText, IEnumerable`1 parameters)
   at ForguncyDataAccess.DataAccess.a(String A_0, String A_1, DataBaseType A_2, DbParameter[] A_3)
   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)
   at ForguncyDataAccess.DataAccess.GetDataTableAsync(List`1 columnBindingInfos, ISqlCondition sqlCondition, TopSqlConditionBase topCondition, List`1 primaryKeys, OrderBySqlCondition orderByCondition, OffsetSqlCondition offsetCondition, Boolean distinct)
   at Forguncy.Server2.ForguncyServerDataAccess.GetDataTableAsync(List`1 columnBindingInfos, ISqlCondition sqlCondition, TopSqlConditionBase topCondition, List`1 primaryKeys, OrderBySqlCondition orderByCondition, OffsetSqlCondition offsetCondition, Boolean distinct)
   at Forguncy.Server2.Controllers.HomeController.a(List`1 A_0, CurrentRowInfo A_1, Int32 A_2, OffsetSqlCondition A_3, Boolean A_4, ISqlCondition A_5, TopSqlConditionBase A_6, OrderBySqlCondition A_7, List`1 A_8, IDataAccess A_9, Boolean A_10)
   at Forguncy.Server2.Controllers.HomeController.a(List`1 A_0, CurrentRowInfo A_1, Int32 A_2, Int32 A_3, Boolean A_4, QueryCommandInfo A_5, List`1 A_6, String A_7, OffsetSqlCondition A_8, Boolean A_9, ColumnFilterQuery[] A_10, Boolean A_11, List`1 A_12, Boolean A_13)
   at Forguncy.Server2.Controllers.HomeController.a(List`1 A_0, CurrentRowInfo A_1, Int32 A_2, Int32 A_3, Boolean A_4, QueryCommandInfo A_5, List`1 A_6, String A_7, OffsetSqlCondition A_8, Boolean A_9, ColumnFilterQuery[] A_10, Boolean A_11, List`1 A_12, Boolean A_13)
   at Forguncy.Server2.Controllers.HomeController.GetTableDataWithOffset(GetTableDataWithOffsetParam data)
   at lambda_method1261(Closure , Object )
   at Microsoft.AspNetCore.Mvc.Infrastructure.ActionMethodExecutor.AwaitableObjectResultExecutor.Execute(IActionResultTypeMapper mapper, ObjectMethodExecutor executor, Object controller, Object[] arguments)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeActionMethodAsync>g__Awaited|12_0(ControllerActionInvoker invoker, ValueTask`1 actionResultValueTask)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeNextActionFilterAsync>g__Awaited|10_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Rethrow(ActionExecutedContextSealed context)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.Next(State& next, Scope& scope, Object& state, Boolean& isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ControllerActionInvoker.<InvokeInnerFilterAsync>g__Awaited|13_0(ControllerActionInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeFilterPipelineAsync>g__Awaited|20_0(ResourceInvoker invoker, Task lastTask, State next, Scope scope, Object state, Boolean isCompleted)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
   at Microsoft.AspNetCore.Mvc.Infrastructure.ResourceInvoker.<InvokeAsync>g__Awaited|17_0(ResourceInvoker invoker, Task task, IDisposable scope)
   at Microsoft.AspNetCore.Routing.EndpointMiddleware.<Invoke>g__AwaitRequestTask|6_0(Endpoint endpoint, Task requestTask, ILogger logger)
   at Forguncy.Server2.KatanaMiddleware.ProcessEngineMiddleware.InvokeAsync(HttpContext context, ICacheService cacheService)
   at Forguncy.Server2.KatanaMiddleware.ReportsMiddleware.InvokeAsync(HttpContext context, ICacheService cacheService, IReportServerService reportServerService)
   at Forguncy.KatanaMiddleware.ServerCommandMiddleware.InvokeAsync(HttpContext context)
   at Forguncy.KatanaMiddleware.k.InvokeAsync(HttpContext context)
   at Forguncy.KatanaMiddleware.j.InvokeAsync(HttpContext context)
   at Forguncy.Server2.KatanaMiddleware.StartPageMiddleware.InvokeAsync(HttpContext context)
   at ForguncyServerCommon.HttpHeaderMiddlewareBase.InvokeAsync(HttpContext context)
   at Forguncy.KatanaMiddleware.q.InvokeAsync(HttpContext context)",
  "RemoteStackTraceString": null,
  "RemoteStackIndex": 0,
  "ExceptionMethod": null,
  "HResult": -2146232060,
  "Source": "Core .Net SqlClient Data Provider",
  "WatsonBuckets": null,
  "Errors": null,
  "ClientConnectionId": "420d3f5d-22fd-4a1d-96d2-f9314bcc607d"
}

MetadataLoader.loggedError @ MetadataLoader.js?v=638035013340000000:623
c.error @ forguncy.js?v=638035013340000000:9
c @ jquery-3.6.0.min.js?v=638035013340000000:2
fireWith @ jquery-3.6.0.min.js?v=638035013340000000:2
l @ jquery-3.6.0.min.js?v=638035013340000000:2
(anonymous) @ jquery-3.6.0.min.js?v=638035013340000000:2
forguncy.js?v=638035013340000000:29 执行点击命令 OrdererInv!P2 用时: 30489 毫秒
forguncy.js?v=638035013340000000:29 条件 用时: 30483 毫秒
forguncy.js?v=638035013340000000:29 判断: =AU2 等于 1 结果为 false
forguncy.js?v=638035013340000000:29 Else 用时: 30483 毫秒
forguncy.js?v=638035013340000000:29 条件 用时: 4 毫秒
forguncy.js?v=638035013340000000:29 判断: =BK2 不等于 %Null% 结果为 true 用时: 4 毫秒
forguncy.js?v=638035013340000000:29


附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

查看完整内容

如果是这样的话,组合框是支持用缓存的,这个问题和下面这个帖子有些类型,您可以参考下面这个帖子去解决: 放了一个选择器为什么那么慢 - 活字格专区 - 求助中心 - 葡萄城产品技术社区 (grapecity.com.cn)

10 个回复

倒序浏览
最佳答案
最佳答案
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2023-3-6 10:27:03
来自 8#
如果是这样的话,组合框是支持用缓存的,这个问题和下面这个帖子有些类型,您可以参考下面这个帖子去解决:
放了一个选择器为什么那么慢 - 活字格专区 - 求助中心 - 葡萄城产品技术社区 (grapecity.com.cn)
回复 使用道具 举报
Grayson.Shang活字格认证 Wyn认证
超级版主   /  发表于:2023-3-6 13:59:04
2#
大佬您好,您发的这个日志,我看了一下,没有看出来具体的问题,咱们可以在设计器获取一下详细的日志,我们调查一下这个问题

设计器的具体日志如下




关于咱们查询数据,执行时间比较长的情况,大佬可以在网络这边试试看看能不能,查看一下具体是哪个情况,请求的具体内容是什么

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
随风派派
金牌服务用户   /  发表于:2023-3-7 12:28:17
3#
Grayson.Shang 发表于 2023-3-6 13:59
大佬您好,您发的这个日志,我看了一下,没有看出来具体的问题,咱们可以在设计器获取一下详细的日志,我们 ...

日志已上传,麻烦老师看看

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Simon.Sun活字格认证 Wyn认证
超级版主   /  发表于:2023-3-7 15:25:34
4#
您好,从日志上去看,是去在访问数据库查询数据时消耗时间比较久。

您可以去外联库检查下,看数据量大不大,手动执行 SQL 看表数据查询速度如何,看能不能去优化下,比如给表设置索引等。
回复 使用道具 举报
Joe.xu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2023-3-8 08:51:50
6#
Simon.Sun 发表于 2023-3-7 15:25
您好,从日志上去看,是去在访问数据库查询数据时消耗时间比较久。

您可以去外联库检查下,看数据量大不 ...

回复 使用道具 举报
随风派派
金牌服务用户   /  发表于:2023-3-8 09:29:44
7#
Simon.Sun 发表于 2023-3-7 15:25
您好,从日志上去看,是去在访问数据库查询数据时消耗时间比较久。

您可以去外联库检查下,看数据量大不 ...

存货档案使用的是静态表,没有和其他表关联,数据量2万条,只是使用表格中的组合框选择读取数据慢,能否使用缓存,也就是现将2万条记录提前读出来,然后再选择,而不是每次选择档案时都重新加载
回复 使用道具 举报
随风派派
金牌服务用户   /  发表于:2023-3-8 11:19:22
9#
Simon.Sun 发表于 2023-3-8 09:47
如果是这样的话,组合框是支持用缓存的,这个问题和下面这个帖子有些类型,您可以参考下面这个帖子去解决: ...

支持用缓存的帖子看了,好像不太适合我这场景,选择的存货档案为静态表,速度卡在组合框选择上了,内部网填单需要加载>2秒还可接受,外网时间会更长,复制一个存货编码进去,时间长了系统就自动清除复制内容,选择时停了时间过长。
还有其他方法来处理吗?比如部署方案,SQLSERVER数据库优化方案




本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
回复 使用道具 举报
Joe.xu讲师达人认证 悬赏达人认证 活字格认证
超级版主   /  发表于:2023-3-8 11:57:41
10#
这种的可能要分情况来分析,
如果是查询两万条数据慢的话,用上面版主分享的缓存功能应该能处理,
如果是网络传输慢的话,需要从网络层面来优化,
还剩的情况就是加载渲染慢,这种情况一般要提升机器的配置,
楼主可以定位一下是哪种原因,选择合适的优化方案
回复 使用道具 举报
随风派派
金牌服务用户   /  发表于:2023-3-9 20:42:51
11#
Joe.xu 发表于 2023-3-8 11:57
这种的可能要分情况来分析,
如果是查询两万条数据慢的话,用上面版主分享的缓存功能应该能处理,
如果是 ...

表格里面的组合框能用缓存吗?我怎么看着不行呢?能否给个简单的demo,谢谢
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部