Opened 11 years ago

Closed 10 years ago

#2364 closed defect (fixed)

Maestro: Layer Validation Inefficiency (Error)

Reported by: crispinatime Owned by: jng
Priority: low Milestone: Maestro-6.0
Component: Maestro Version:
Severity: minor Keywords:
Cc: External ID:

Description

When usign the validation process in Maestro on a .LayerDefinition the web requests show a lot of traffic and the validation is very slow.

For schemas there is a call to GETIDENTITYPROPERTIES for every class. For layers that have schemas with large numbers of classes (Oracle with tables or SHP folders with files) this can take a long time, is inefficient etc.

This effect in .LayerDefinition validation may also have ramification for higher-order objects such as .MapDefinitions that contain many layers.

Is there a valid reason for this?

Change History (2)

comment:1 by jng, 11 years ago

Validation is testing for selectability. No identity properties = unselectable layer, this would have issues if that layer is marked as selectable in the Map Definition.

There's no batched version of this operation and doing a full schema description of a large data store generally times out on large data stores.

We cache the validation results of each resource in a validation run so subsequent re-visits to the same resource will be skipped.

Now that I look back at the validation code, we really only have to do this in the context of layers that are marked as selectable in the Map Definition, and not every Class Definition in the Feature Source

comment:2 by jng, 10 years ago

Milestone: Maestro-5.0-maintenanceMaestro-5.2
Resolution: fixed
Status: newclosed

Fixed r8028 for the case of a shallow validation (ie. One done when saving a Layer Definition). In this case, the parent Feature Source was being validated regardless when only the Layer Definition should be the subject of validation.

Note: See TracTickets for help on using tickets.