• Post Reply Bookmark Topic Watch Topic
  • New Topic
programming forums Java Mobile Certification Databases Caching Books Engineering Micro Controllers OS Languages Paradigms IDEs Build Tools Frameworks Application Servers Open Source This Site Careers Other Pie Elite all forums
this forum made possible by our volunteer staff, including ...
Marshals:
  • Campbell Ritchie
  • Jeanne Boyarsky
  • Ron McLeod
  • Paul Clapham
  • Liutauras Vilda
Sheriffs:
  • paul wheaton
  • Rob Spoor
  • Devaka Cooray
Saloon Keepers:
  • Stephan van Hulst
  • Tim Holloway
  • Carey Brown
  • Frits Walraven
  • Tim Moores
Bartenders:
  • Mikalai Zaikin

Consuming database connections

 
Ranch Hand
Posts: 17424
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
I'm using 2.1.7, but I doubt things are much different in 2.1.8.

What I noticed is that each view action keeps a db connection open even when it's not needed.
The context opens a db connection when first db request is made (to get/set some data) and remains open (not released) until the context is finished.

It's not a big deal with pageviews or post writes/edits.

But with large attachments, it consumers all available db connections and takes the whole application context down.

downloadAttach might take a long time to complete. Now imagine 50 users on dial-up connections downloading 10MB attachment.

That's 50 database connections used all at once.

Is there a way (some quick hack) to make it release the db connections right after the "am.isPhysicalDownloadMode" call within downloadAttach()?

I don't care that the download counter would be off when people abort downloads. I would rather just commit the transaction and after that pipe the data to the client.

Is it possible to do that without writing almost redundant methods for dao,context classes to be used with downloadAttach?

My box was down 3 times during the last month, all because of 50 or so people trying to download the same large attachment at the same time.


[originally posted on jforum.net by bcc]
 
Migrated From Jforum.net
Ranch Hand
Posts: 17424
  • Mark post as helpful
  • send pies
    Number of slices to send:
    Optional 'thank-you' note:
  • Quote
  • Report post to moderator
Here is a hack for anyone in a similar situation.
I tried to change as little as I can.

The line numbers might not match with 2.1.7 vanilla because I made some other changes.
So if a patch run fails, then try editing manually or match the line numbers in the diff below to your real line numbers.


[originally posted on jforum.net by bcc]
 
With a little knowledge, a cast iron skillet is non-stick and lasts a lifetime.
reply
    Bookmark Topic Watch Topic
  • New Topic