Ticket #220 (closed defect: duplicate)

Opened 19 years ago

Last modified 16 years ago

Resource Pooling Does Not Release Instances In All Situations

Reported by: MaestroFJP Owned by: joe.rinehart
Priority: high Milestone:
Version: 2.0.304 Severity: critical
Keywords: SizedPool resource pool Cc:

Description

In particular situations, a pooled instance doesn't get released back to the resource pool. This causes the available number of instances to drop in the SizedPool?, however the pool is unable to create more resources because it reaches it maximum. This can cause strange errors to occur as requests wait for available instances to be released.

It appears that pooled instances do not get released during a forward in which the developer only uses url params (doesn't persist the event in the session scope) and when developer utilitizes cflocation, cfabort, cfcontent or cferror. Since the framework doesn't get an opportunity to release the instance back to the pool, the resource is abandoned and causes resource "cesspooling". This behavior needs to be verified (although I believe Jeff Houser's post to the list confirms this defect).

The fix is to create a public method that allows developers to manually release the instance back to the pool before any tag that performs some sort of flush or ends the request earlier. Also, the forward should release the instance before fowarding when not using the session persist method.

Change History

Changed 19 years ago by joe.rinehart

  • status changed from new to closed
  • resolution set to duplicate

Same as #229

Changed 16 years ago by cfgrok

  • milestone User Reported Issues (with full information) deleted

Milestone User Reported Issues (with full information) deleted

Note: See TracTickets for help on using tickets.