shinyproxy 2.4.1 fails to load DT tables: ajax error
See original GitHub issueHi,
I’m running some apps in a swarm dockerized shinyproxy and tried to update shinyproxy from 2.3.1 to 2.4.1
Apps work nice except for DT tables. They raise an ajax error that not appears in shinyproxy 2.3.1:
Chrome console says the following:
Here is an example of a simple app that can trigger the issue, at least in my config:
library(shiny)
library(DT)
# ui
ui <- shiny::fluidPage(
DT::DTOutput('iris_table')
)
# server
server <- function(input, output, session) {
output$iris_table <- DT::renderDT({
DT::datatable(iris)
})
}
shiny::shinyApp(ui, server)
And the (I think) relevant lines in shinyproxy logs:
2020-10-30T09:27:03.690039944Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | 2020-10-30 09:27:03.689 DEBUG 1 --- [ XNIO-1 I/O-10] io.undertow.request.io : Fixed length stream closed with with 1378 bytes remaining
2020-10-30T09:27:03.690292679Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | 2020-10-30 09:27:03.690 DEBUG 1 --- [ XNIO-1 I/O-10] i.u.client.http.HttpClientExchange : request terminated for request to 2413b0413c55/10.0.1.133:3838 /session/3f66af1cdf5134d02403b8140f768758/dataobj/iris_table?w=&nonce=d59bacb470b9a656
2020-10-30T09:27:03.691633741Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | 2020-10-30 09:27:03.691 ERROR 1 --- [ XNIO-1 I/O-10] io.undertow.proxy : UT005028: Proxy request to /shinyproxy/proxy_endpoint/420b8d5a-b0fa-4f28-8575-d98b05ea7e46/session/3f66af1cdf5134d02403b8140f768758/dataobj/iris_table failed
2020-10-30T09:27:03.691664541Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun |
2020-10-30T09:27:03.691672937Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | io.undertow.server.TruncatedResponseException: null
2020-10-30T09:27:03.691679740Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpRequestConduit.truncateWrites(HttpRequestConduit.java:711) ~[undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691687091Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.conduits.AbstractFixedLengthStreamSinkConduit.terminateWrites(AbstractFixedLengthStreamSinkConduit.java:256) ~[undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691694144Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.conduits.ConduitStreamSinkChannel.shutdownWrites(ConduitStreamSinkChannel.java:178) ~[xnio-api-3.8.0.Final.jar!/:3.8.0.Final]
2020-10-30T09:27:03.691701331Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.channels.DetachableStreamSinkChannel.shutdownWrites(DetachableStreamSinkChannel.java:79) ~[undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691708134Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener.handleEvent(ProxyHandler.java:754) ~[undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691714960Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction$1.completed(ProxyHandler.java:646) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691721719Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction$1.completed(ProxyHandler.java:561) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691740601Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientExchange.invokeReadReadyCallback(HttpClientExchange.java:212) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691747781Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientConnection.initiateRequest(HttpClientConnection.java:414) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691754617Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientConnection.sendRequest(HttpClientConnection.java:347) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691761270Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction.run(ProxyHandler.java:561) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691767989Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.util.SameThreadExecutor.execute(SameThreadExecutor.java:35) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691776322Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.HttpServerExchange.dispatch(HttpServerExchange.java:821) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691783155Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.completed(ProxyHandler.java:316) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691789864Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.completed(ProxyHandler.java:290) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691796580Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool.connectionReady(ProxyConnectionPool.java:353) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691803303Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool.access$900(ProxyConnectionPool.java:61) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691810413Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool$2.completed(ProxyConnectionPool.java:287) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691817082Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool$2.completed(ProxyConnectionPool.java:274) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691823731Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider.handleConnected(HttpClientProvider.java:156) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691830427Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider.access$000(HttpClientProvider.java:51) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691837253Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider$2.handleEvent(HttpClientProvider.java:127) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691843892Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider$2.handleEvent(HttpClientProvider.java:124) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.691850561Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92) [xnio-api-3.8.0.Final.jar!/:3.8.0.Final]
2020-10-30T09:27:03.691857163Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.nio.WorkerThread$ConnectHandle.handleReady(WorkerThread.java:333) [xnio-nio-3.8.0.Final.jar!/:3.8.0.Final]
2020-10-30T09:27:03.691864056Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.nio.WorkerThread.run(WorkerThread.java:591) [xnio-nio-3.8.0.Final.jar!/:3.8.0.Final]
2020-10-30T09:27:03.691870632Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun |
2020-10-30T09:27:03.692511847Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | 2020-10-30 09:27:03.692 DEBUG 1 --- [ XNIO-1 I/O-10] io.undertow.request.error-response : Setting error code 503 for exchange HttpServerExchange{ POST /shinyproxy/proxy_endpoint/420b8d5a-b0fa-4f28-8575-d98b05ea7e46/session/3f66af1cdf5134d02403b8140f768758/dataobj/iris_table}
2020-10-30T09:27:03.692557512Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun |
2020-10-30T09:27:03.692566797Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | java.lang.RuntimeException: null
2020-10-30T09:27:03.692573600Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.HttpServerExchange.setStatusCode(HttpServerExchange.java:1416) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692580954Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler.handleFailure(ProxyHandler.java:668) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692587887Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$HTTPTrailerChannelListener.handleEvent(ProxyHandler.java:769) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692594773Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction$1.completed(ProxyHandler.java:646) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692601442Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction$1.completed(ProxyHandler.java:561) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692608095Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientExchange.invokeReadReadyCallback(HttpClientExchange.java:212) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692614734Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientConnection.initiateRequest(HttpClientConnection.java:414) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692621507Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientConnection.sendRequest(HttpClientConnection.java:347) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692628226Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyAction.run(ProxyHandler.java:561) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692638133Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.util.SameThreadExecutor.execute(SameThreadExecutor.java:35) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692644758Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.HttpServerExchange.dispatch(HttpServerExchange.java:821) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692651578Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.completed(ProxyHandler.java:316) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692659901Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyHandler$ProxyClientHandler.completed(ProxyHandler.java:290) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692666670Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool.connectionReady(ProxyConnectionPool.java:353) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692673560Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool.access$900(ProxyConnectionPool.java:61) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692680426Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool$2.completed(ProxyConnectionPool.java:287) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692687095Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.server.handlers.proxy.ProxyConnectionPool$2.completed(ProxyConnectionPool.java:274) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692699535Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider.handleConnected(HttpClientProvider.java:156) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692706401Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider.access$000(HttpClientProvider.java:51) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692713484Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider$2.handleEvent(HttpClientProvider.java:127) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692720127Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at io.undertow.client.http.HttpClientProvider$2.handleEvent(HttpClientProvider.java:124) [undertow-core-2.1.4.Final.jar!/:2.1.4.Final]
2020-10-30T09:27:03.692726833Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.ChannelListeners.invokeChannelListener(ChannelListeners.java:92) [xnio-api-3.8.0.Final.jar!/:3.8.0.Final]
2020-10-30T09:27:03.692733391Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.nio.WorkerThread$ConnectHandle.handleReady(WorkerThread.java:333) [xnio-nio-3.8.0.Final.jar!/:3.8.0.Final]
2020-10-30T09:27:03.692740147Z lfc_swarm_lfc_shinyproxy_production.1.kjw50aadt3q9@fun2fun | at org.xnio.nio.WorkerThread.run(WorkerThread.java:591) [xnio-nio-3.8.0.Final.jar!/:3.8.0.Final]
Issue Analytics
- State:
- Created 3 years ago
- Comments:9 (4 by maintainers)
Top Results From Across the Web
[Bug Report] AJAX error in the new release of ShinyProxy ...
The browser complains Ajax errors while ShinyProxy log says Request Methods ... shinyproxy 2.4.1 fails to load DT tables: ajax error #246.
Read more >DataTables ajax error with shinyproxy v. 2.4.1
Our config. We are running shinyproxy (2.4.1) from a Kubernetes cluster with an NGINX ingress controller. We have set NGINX to have “sticky ......
Read more >FAQ | ShinyProxy
This almost always means an R error is triggered when docker is trying to launch the Shiny app. Typical examples are: some dependencies...
Read more >Ajax Error with RStudio DT DataTables Package for Shiny App
This is using the latest development packages for shiny and DT after the CRAN packages did not seem to work. Is there a...
Read more >Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start FreeTop Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Top GitHub Comments
Hi @egde
Thanks for looking into it again. There is indeed a problem with the combination of openid and Data Tables. I managed to provide a bugfix which will be released in a next version.
I took some time today to have a look at it. The DT tables work fine if authentication is off. Problems begin with
I am using Azure Active Directory here.