Shinyproxy: [Bug 报告] ShinyProxy(版本 2.3.0)中的 AJAX 错误 503(服务不可用)

创建于 2019-08-28  ·  13评论  ·  资料来源: openanalytics/shinyproxy

在 ShinyProxy 的新发布版本(2.3.0)中,所有使用 DT 和服务器处理模式的应用程序都会崩溃。 浏览器抱怨 Ajax 错误,而浏览器程序员工具显示“jquery.min.js:4 POST http://myip/app_direct/retire/session/cbc7bf01da3a023b6db378384c240836/dataobj/shiny_table?w=&nonce=22377961e7fd2317 503(服务不可用)”

警报框如下:
myip 显示
DataTables 警告:表 id = DataTables_Table_0 - Ajax 错误。 有关此错误的更多信息,请参阅http://datatables.net/tn/7

https://github.com/openanalytics/shinyproxy/issues/140

我的环境:
操作系统:Ubuntu Ubuntu 18.04.3 LTS
身份验证:keycloak 7.0.0
反向代理:Nginx
示例闪亮的应用程序:

图书馆(闪亮)
图书馆(DT)

ui <-fluidPage(DT::dataTableOutput('tbl'))
服务器 <- 功能(输入,输出,会话){
output$tbl <- DT::renderDataTable(data.frame(Col_1=c(1:10), Col_2=c(11:20)))
}
闪亮的应用程序(用户界面,服务器)

与 application.yml 中的简单身份验证或 ldap 完全相同的机器(docker、shinyproxy、nginx 设置)运行没有任何问题。

shinyproxy.log 如下:
2019-08-28 11:46:21.991 INFO 14337 --- [XNIO-2 task-3] eocontainerproxy.service.UserService:用户登录 [用户:test1]
2019-08-28 11:46:25.142 INFO 14337 --- [XNIO-2 task-6] csdocker.client.DefaultDockerClient :使用 ID 启动容器:f24f391a707d19228f5e97da1e7f8e271230760e91bee2898f454b0bddd0f15a
2019-08-28 11:46:28.068 INFO 14337 --- [XNIO-2 task-6] eocontainerproxy.service.ProxyService:代理已激活 [用户:test1] [规格:退休] [id:4199b4a8-60dd-43e7- ad8e-0bfac025cc76]
2019-08-28 11:46:28.828 错误 14337 --- [XNIO-2 I/O-3] io.undertow.proxy:UT005028:对 /proxy_endpoint/4199b4a8-60dd-43e7-ad8e-0bfac025cc76/session 的代理请求/4fba467e8b4976c85ad4be80ee538d7d/dataobj/shiny_table 失败

io.undertow.server.TruncatedResponseException:空
在 io.undertow.client.http.HttpRequestConduit.truncateWrites(HttpRequestConduit.java:711) ~[undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.conduits.AbstractFixedLengthStreamSinkConduit.terminateWrites(AbstractFixedLengthStreamSinkConduit.java:256) ~[undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 org.xnio.conduits.ConduitStreamSinkChannel.shutdownWrites(ConduitStreamSinkChannel.java:178) ~[xnio-api-3.3.8.Final.jar!/:3.3.8.Final]
在 io.undertow.channels.DetachableStreamSinkChannel.shutdownWrites(DetachableStreamSinkChannel.java:79) ~[undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener.handleEvent(ProxyHandler.java:754) ~[undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction$1.completed(ProxyHandler.java:646) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction$1.completed(ProxyHandler.java:561) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.client.http.HttpClientExchange.invokeReadReadyCallback(HttpClientExchange.java:212) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.client.http.HttpClientConnection.initiateRequest(HttpClientConnection.java:410) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.client.http.HttpClientConnection.sendRequest(HttpClientConnection.java:343) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction.run(ProxyHandler.java:561) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.util.SameThreadExecutor.execute(SameThreadExecutor.java:35) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.HttpServerExchange.dispatch(HttpServerExchange.java:815) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.completed(ProxyHandler.java:316) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.completed(ProxyHandler.java:290) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyConnectionPool.connectionReady(ProxyConnectionPool.java:338) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.ProxyConnectionPool.connect(ProxyConnectionPool.java:525) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 io.undertow.server.handlers.proxy.LoadBalancingProxyClient.getConnection(LoadBalancingProxyClient.java:301) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 eu.openanalytics.containerproxy.util.ProxyMappingManager$1.getConnection(ProxyMappingManager.java:88) [containerproxy-0.8.3.jar!/:0.8.3]
在 io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.run(ProxyHandler.java:310) [undertow-core-1.4.22.Final.jar!/:1.4.22.Final]
在 org.xnio.nio.WorkerThread.safeRun(WorkerThread.java:582) [xnio-nio-3.3.8.Final.jar!/:3.3.8.Final]
在 org.xnio.nio.WorkerThread.run(WorkerThread.java:466) [xnio-nio-3.3.8.Final.jar!/:3.3.8.Final]

最有用的评论

在此期间,我已被修复。 我们正在为发布做准备。

所有13条评论

感谢您的报告! 这确实是#140的副本

谢谢,等待修复错误

这个错误有什么更新吗?

在此期间,我已被修复。 我们正在为发布做准备。

@tverbeke你能分享一下提交或公关吗? 我们真的需要这个,尝试了一些技巧,无法正确解决它。

您能否指出您一直在处理的提交或分支,那将非常有帮助。 @tverbeke

@tverbeke有什么更新吗? 这将非常有帮助。

这是相关的提交: https ://github.com/openanalytics/containerproxy/commit/c99298934470b2ecee35c9eb9ad67e49fc7acd46

https://github.com/openanalytics/shinyproxy/issues/184不知道它是如何解决这个问题的。 当身份验证设置为无时,可以在没有 Keyclock 身份验证的情况下复制它。

这个错误有什么更新吗?

感谢您积极主动地提醒这个问题,但是在多个问题中发布类似评论似乎效率较低,特别是在这个问题中,因为重复而关闭......

https://github.com/openanalytics/shinyproxy/issues/184不知道它是如何解决这个问题的。 当身份验证设置为无时,可以在没有 Keyclock 身份验证的情况下复制它。

事实上,#184 似乎是一个不同的问题,这个修复可能无济于事。 然而,评论与_current issue_(和#140)有关,其中提到了keycloak auth的使用。

很抱歉多条评论。 我的想法是,由于问题的根源是一个 POST 请求,该请求因同样的错误而失败。 他们可能有类似的解决方案。
期待#184的解决方案☺️

你好,我又收到这个错误了。 我从 2.4.1 降级到 2.3.1,错误消失了。

@KZARCA @LEDfan修复将在下一个版本中发布。

此页面是否有帮助?
0 / 5 - 0 等级

相关问题

donarus picture donarus  ·  3评论

shrektan picture shrektan  ·  9评论

lucius-verus-fan picture lucius-verus-fan  ·  8评论

fmmattioni picture fmmattioni  ·  3评论

Emelieh21 picture Emelieh21  ·  5评论