Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bug]: mysql数据源测试成功刷新schema超时报错 #109

Open
1 task done
vfrtgb158 opened this issue Dec 3, 2024 · 4 comments
Open
1 task done

[Bug]: mysql数据源测试成功刷新schema超时报错 #109

vfrtgb158 opened this issue Dec 3, 2024 · 4 comments

Comments

@vfrtgb158
Copy link

Is there an existing issue for this?

  • I have searched the existing issues

Description

新增mysql数据源, 填完连接配置后点击测试按钮显示"测试成功, dev配置正确", 然后点击保存
在刷新数据库schema信息时报错:
Appsmith server timed out when fetching structure. Please reach out to appsmith customer support to resolve this.

Steps To Reproduce

  1. docker compose 新拉取的镜像, app页面点击创建桌面应用
  2. 左侧数据源点击添加数据源, 选择mysql
  3. 点击测试提示"测试成功, dev配置正确"
    image
  4. 点击保存, 自动刷新schema, 过了十几秒报错: Appsmith server timed out when fetching structure. Please reach out to appsmith customer support to resolve this.
    image

详细日志:
pageplug6 | editor stdout | 127.0.0.1 - - [03/Dec/2024:14:20:17 +0800] "GET / HTTP/1.1" 200 6558 "-" "curl/7.68.0"
pageplug6 | editor stdout |
pageplug6 | backend stdout | [2024-12-03 06:20:30,309] userEmail=[email protected], sessionId=570a9757-e475-4956-a88d-bc60a7b400b4, thread=lettuce-epollEventLoop-10-1, requestId=af4e1d69-da0c-4175-af27-7520e99071ae - Going to get structure for datasource with id: '674e9a837e6eaf67a008718e'.
pageplug6 | backend stdout |
pageplug6 | backend stdout | [2024-12-03 06:20:30,322] - Resource context exists. Returning the same.
pageplug6 | backend stdout |
pageplug6 | editor stdout | 127.0.0.1 - - [03/Dec/2024:14:20:32 +0800] "GET / HTTP/1.1" 200 6558 "-" "curl/7.68.0"
pageplug6 | editor stdout |
pageplug6 | backend stdout | [2024-12-03 06:20:45,319] userEmail=[email protected], sessionId=570a9757-e475-4956-a88d-bc60a7b400b4, thread=parallel-14, requestId=af4e1d69-da0c-4175-af27-7520e99071ae - In the datasourceStorage structure error mode.
pageplug6 | backend stdout | com.appsmith.external.exceptions.pluginExceptions.AppsmithPluginException: Appsmith server timed out when fetching structure. Please reach out to appsmith customer support to resolve this.
pageplug6 | backend stdout | at com.appsmith.server.solutions.ce.DatasourceStructureSolutionCEImpl.lambda$getStructure$10(DatasourceStructureSolutionCEImpl.java:130)
pageplug6 | backend stdout | at reactor.core.publisher.Mono.lambda$onErrorMap$27(Mono.java:3769)
pageplug6 | backend stdout | at reactor.core.publisher.Mono.lambda$onErrorResume$29(Mono.java:3859)
pageplug6 | backend stdout | at reactor.core.publisher.FluxOnErrorResume$ResumeSubscriber.onError(FluxOnErrorResume.java:94)
pageplug6 | backend stdout | at com.appsmith.server.configurations.MDCConfig$MdcContextLifter.onError(MDCConfig.java:58)
pageplug6 | backend stdout | at reactor.core.publisher.SerializedSubscriber.onError(SerializedSubscriber.java:124)
pageplug6 | backend stdout | at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.handleTimeout(FluxTimeout.java:295)
pageplug6 | backend stdout | at reactor.core.publisher.FluxTimeout$TimeoutMainSubscriber.doTimeout(FluxTimeout.java:280)
pageplug6 | backend stdout | at reactor.core.publisher.FluxTimeout$TimeoutTimeoutSubscriber.onNext(FluxTimeout.java:419)
pageplug6 | backend stdout | at com.appsmith.server.configurations.MDCConfig$MdcContextLifter.onNext(MDCConfig.java:53)
pageplug6 | backend stdout | at reactor.core.publisher.FluxOnErrorReturn$ReturnSubscriber.onNext(FluxOnErrorReturn.java:162)
pageplug6 | backend stdout | at com.appsmith.server.configurations.MDCConfig$MdcContextLifter.onNext(MDCConfig.java:53)
pageplug6 | backend stdout | at reactor.core.publisher.MonoDelay$MonoDelayRunnable.propagateDelay(MonoDelay.java:271)
pageplug6 | backend stdout | at reactor.core.publisher.MonoDelay$MonoDelayRunnable.run(MonoDelay.java:286)
pageplug6 | backend stdout | at io.sentry.spring.jakarta.webflux.SentryScheduleHook.lambda$apply$0(SentryScheduleHook.java:22)
pageplug6 | backend stdout | at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:68)
pageplug6 | backend stdout | at reactor.core.scheduler.SchedulerTask.call(SchedulerTask.java:28)
pageplug6 | backend stdout | at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
pageplug6 | backend stdout | at java.base/java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:304)
pageplug6 | backend stdout | at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1136)
pageplug6 | backend stdout | at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:635)
pageplug6 | backend stdout | at java.base/java.lang.Thread.run(Thread.java:840)
pageplug6 | backend stdout |
pageplug6 | editor stdout | 10.1.140.5 - - [03/Dec/2024:14:20:45 +0800] "GET /api/v1/datasources/674e9a837e6eaf67a008718e/structure?ignoreCache=true HTTP/1.1" 200 200 "http://10.58.132.3:8564/app/2/page1-674ea1ab7e6eaf67a0087193/edit/datasource/674e9a837e6eaf67a008718e" "Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/131.0.0.0 Safari/537.36 Edg/131.0.0.0"
pageplug6 | editor stdout |
pageplug6 | redis stdout | 1748:M 03 Dec 2024 14:20:45.422 * 1 changes in 15 seconds. Saving...
pageplug6 | redis stdout |
pageplug6 | redis stdout | 1748:M 03 Dec 2024 14:20:45.423 * Background saving started by pid 10896
pageplug6 | redis stdout |
pageplug6 | redis stdout | 10896:C 03 Dec 2024 14:20:45.425 * DB saved on disk
pageplug6 | redis stdout |
pageplug6 | redis stdout | 10896:C 03 Dec 2024 14:20:45.426 * RDB: 0 MB of memory used by copy-on-write
pageplug6 | redis stdout |
pageplug6 | redis stdout | 1748:M 03 Dec 2024 14:20:45.523 * Background saving terminated with success
pageplug6 | redis stdout |
pageplug6 | editor stdout | 127.0.0.1 - - [03/Dec/2024:14:20:48 +0800] "GET / HTTP/1.1" 200 6558 "-" "curl/7.68.0"
pageplug6 | editor stdout |
pageplug6 | backend stdout | [2024-12-03 06:20:49,402] userEmail=[email protected], sessionId=570a9757-e475-4956-a88d-bc60a7b400b4, thread=lettuce-epollEventLoop-10-1, requestId=2a432dfa-18af-4878-ab71-ff379dee4683 - Going to get structure for datasource with id: '674e9a837e6eaf67a008718e'.
pageplug6 | backend stdout |
pageplug6 | backend stdout | [2024-12-03 06:20:49,415] - Resource context exists. Returning the same.

Public Sample App

No response

Environment

Production

Issue video log

No response

Version

1.9.37

@AppsmithCN
Copy link
Contributor

1、之前有没有连接上?还是第一次连接?
2、我看你图片截图的操作,感觉密码没填写?新建一个是否还会有这样的问题?
3、用navicat去连接数据库是否能正常连接,排查下是不是mysql有防火墙的设置

@vfrtgb158
Copy link
Author

感谢大佬回复

  1. 这是第一次连接, 重新试了好几次都是这种情况。
  2. 密码填了,截图是直接点编辑进去测试,重新输入密码点测试还是提示成功,保存后刷新就报错。
  3. 这是一个长期在用的mysql库,其他连接工具正常,navicat、dbeaver、datagrip、同节点的mysql命令行工具、代码都可以正常连接,另外试了Lowcoder也可以连接。

1、之前有没有连接上?还是第一次连接? 2、我看你图片截图的操作,感觉密码没填写?新建一个是否还会有这样的问题? 3、用navicat去连接数据库是否能正常连接,排查下是不是mysql有防火墙的设置

@AppsmithCN
Copy link
Contributor

1、PagePlug部署的服务器跟数据库在同一个服务器上还是?如果不在同一台服务器上的话,要检查下两台服务器的通信情况
2、我们之前遇到过类似的问题,PagePlug部署在A服务器上,MySQL部署在B服务器上,MySQL的防火墙没有把A服务器加入到白名单,所以连接失败了,可以排查处理下

@vfrtgb158
Copy link
Author

不在同一台机器上, 在同一个局域网内的, PagePlug部署的服务器可以直接连接目标mysql.
如果不能连通, 猜测点测试按钮的时候应该就会报错连接错误吧

1、PagePlug部署的服务器跟数据库在同一个服务器上还是?如果不在同一台服务器上的话,要检查下两台服务器的通信情况 2、我们之前遇到过类似的问题,PagePlug部署在A服务器上,MySQL部署在B服务器上,MySQL的防火墙没有把A服务器加入到白名单,所以连接失败了,可以排查处理下

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants