Comments (4)
I thought it's the database issue we had already a long time ago. But instead it is a default timeout when writing to StreamingResponseBody which is exceeded for large downloads.
The net simple recommends to increase the timeout:
spring.mvc.async.request-timeout = 3600000
(see for example https://stackoverflow.com/questions/42877498/async-timeout-downloading-a-large-file-using-streamingresponsebody-on-spring-boo)
from curation-dashboard.
unfortunately the issue is a bit more complex. Apparently the cause of the issue is the fact that that two Stream-methods StatusDetailRepository.findAllByCategory and StatusDetailRepository.findAllByProvidergroupnameAndCategory are not behaving in the supposed way. My idea was to read the records from the database and to write each record directly to the OutputStream without any need to store the whole recordset. But from debugging and an article I found (see https://medium.com/predictly-on-tech/spring-data-jpa-batching-using-streams-af456ea611fc) its quite likely that a Stream of Objects is created in memory first, which might take a lot of time, then we iterate through the Stream and write each Object to the OutputStream
from curation-dashboard.
implemented in 6.1.2
from curation-dashboard.
for the moment the streaming only works when the Download controller uses the EntityManager directly
from curation-dashboard.
Related Issues (20)
- Add link to general collection report in collection specific linkchecker report HOT 1
- Set connection- and read-timeout for http-requests HOT 1
- Use common configuration properties for all modules HOT 1
- Make report history accessible HOT 2
- Use MockServer for testing in pph-, ccr- and cr-service
- Review web-app for inappropriate 500 status codes HOT 1
- Review redundant CRConfig.class HOT 1
- The collection- and instance-usage isn't set in profile report HOT 1
- Travis build is failing HOT 9
- Delete outdated reports
- Adding back-to-current link to historic collection reports HOT 1
- Document application.yml files
- Reduce calls to actual services in tests HOT 1
- Profiles- and Collections-table not rendered correctly when scrolling after sorting HOT 2
- add new dependency commonmark-ext-heading-anchor to the pom of curation-web HOT 2
- single profile analysis provides always the same download link
- making curation-web more accessible HOT 1
- sending accept header with URL transmission
- processing accept header for reports
- Last facet coverage column in collection table not collored HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from curation-dashboard.