Opened 14 years ago
Closed 14 years ago
#1584 closed defect (fixed)
Feature source create or update locks up server while under load
Reported by: | trevorwekel | Owned by: | trevorwekel |
---|---|---|---|
Priority: | high | Milestone: | 2.2 |
Component: | Server | Version: | 2.2.0 |
Severity: | critical | Keywords: | |
Cc: | brucedechant | External ID: |
Description
Due to mutex behaviour within the MapGuide server process, any create or update operation performed on a feature source may lock up the server process if a connection is simultaneously opened to another feature source in the connection pool. Pooled connections typically include "database" connections like ODBC, SQL Server, and Oracle.
Here are some cases where this may occur:
- An author creates a new feature source on a live site with database connections while it is under load.
- One user performs a buffer or measure operation while another user pans a map which uses a "database" connection.
Attachments (1)
Change History (7)
by , 14 years ago
Attachment: | connectionLock.patch added |
---|
comment:1 by , 14 years ago
The attached patch contains the fix. Only the changes to CacheManager.cpp and FdoConnectionManager.h are strictly necessary.
The additional trace logging in FdoConnectionManager.cpp is not required to fix the issue but I was able to track this issue down with the additional tracing. It would be good to keep it around to resolve any future mutex issues.
comment:2 by , 14 years ago
Cc: | added |
---|
comment:3 by , 14 years ago
Looks good. Thanks for adding the additional MgLogDetail information to several of the methods too.
Patch for defect