Defer bounds calculation during import

Description

Some geoserver users have observed that generating the Import Context can be very slow for large databases (eg. 2-3 minutes for a database containing a table with 4.5 million rows).

After examining the Importer code, I beleive this is caused by generating the resource bounds as the tasks are created (a calculation which is dependant on the number of rows) during context generation.

Moving bounds generation to the do__Import() step reduces the time to generate the context by increasing the import time. The net time to do an import appears unchanged.

This provides notable time savings for users who only want to import one or two tables from a large database, and should not affect users who are importing everything.

Environment

None

Status

Assignee

Torben Barsballe

Reporter

Torben Barsballe

Triage

None

Fix versions

Affects versions

None

Components

Priority

Medium
Configure