Opened 10 years ago

Closed 10 years ago

#546 closed defect (fixed)

Deselect and tooltips very slow in MapGuide

Reported by: trevorwekel Owned by: trevorwekel
Priority: high Milestone: 2.1
Component: Rendering Service Version: 2.0.0
Severity: critical Keywords:
Cc: External ID: 1072510

Description

Create a map with a single vector layer in MapGuide from an Oracle database. The database should contain more than 50,000 features.

Select a feature. Selection is highlighted in 1-2 seconds. Deselect by hitting white space. The MapGuide Server process pins the CPU for 15 seconds or more depending on the dataset size and eventually deselects the feature.

This will also occur during hovering if a tooltip is defined for the layer.

Change History (6)

comment:1 Changed 10 years ago by trevorwekel

Status: newassigned

comment:2 Changed 10 years ago by trevorwekel

Resolution: fixed
Status: assignedclosed

comment:3 Changed 10 years ago by trevorwekel

Resolution: fixed
Status: closedreopened

The submitted fix is incomplete when used with some coordinate systems. For example, attempting to select outside of the bounds of an LL84 map will not work as expected.

comment:4 Changed 10 years ago by trevorwekel

The following modifications have been make to query algorithm:

  • Only perform the query if a selection area can be calculated. If the input geometry is a line, a centroid cannot be calculated. This typically occurs outside of coordinate system bounds.
  • Intersect the selection area with the map extent and only process the query if the intersection exists.

Submitted to 2.0.x stream under http://trac.osgeo.org/mapguide/changeset/3325

comment:5 Changed 10 years ago by trevorwekel

Added query options to !RSMgFeatureReader instantiation. In some cases, the stylizer will use a multi-pass algorithm so the query options are required.

Submitted to 2.0.x stream under http://trac.osgeo.org/mapguide/changeset/3351

comment:6 Changed 10 years ago by trevorwekel

Resolution: fixed
Status: reopenedclosed
Note: See TracTickets for help on using tickets.