Opened 14 years ago

Closed 14 years ago

#1177 closed defect (fixed)

RFC 76 (Grid/Graticule) Memory Useage can be excessive

Reported by: NormOlsen Owned by: NormOlsen
Priority: high Milestone:
Component: General Version: 2.0.2
Severity: critical Keywords:
Cc: External ID: 1265420

Description

Testing of the Grid/Graticule feature (RFC 76) indicated that is was rather easy for a user to submit a request which would cause the RFC 76 API to comsume all available memory and cause any host application to slow to a crawl if not crash badly. Thus, it is suggested that memory management features be added to the feature to enable the Open Source Grid/Graticule API to measure its consumption of memory and throw a MapGuide exception when memory consumption exceeds specific limits.

Change History (2)

comment:1 by NormOlsen, 14 years ago

So far, two submissions have been made for this defect. The first produced revuision number 4386. It included the basic framework which had been tested, but was not tuned. The second submission, which produced revision 4388, included corrections of integer overflow conditions, and corrected problems associated with generating (for example) regions for each MGRS zone independently; thus enabling the system to consume a hundred (or even more) megabytes above and beyond the exception level limit specified by the used.

comment:2 by NormOlsen, 14 years ago

Resolution: fixed
Status: newclosed

The final submission for this ticket included a rework of the memory exhaustion detection scheme and includes a feature to detect how much heap memory is availlable. Upon construction of the MGRS Grid object, the user of the MGRS Grid facitilty can specify the minimum amount of heap memory is to be maintained. At such time as the Grid facility determines that its memory useage will cause heap memeory to drop below that point, an exception is thrown.

Submission of this final correction produced version 4419.

Note: See TracTickets for help on using tickets.