Opened 13 years ago

Closed 13 years ago

#1957 closed defect (fixed)

Maestro 4 , ODBC connection: Timeout while saving

Reported by: janvw Owned by: jng
Priority: low Milestone: Maestro-5.0
Component: Maestro Version:
Severity: major Keywords:
Cc: External ID:

Description

Connecting to big SQL Server 2000 databases (> 350 tables) via ODBC is causing Maestro to time-out while saving (see attached error message). The SQL server feature sources can be accessed successfully via FDO Toolbox and also the ODBC provider of AutoCAD Map 2008.

Attachments (3)

timeout.txt (2.4 KB ) - added by janvw 13 years ago.
timeout2.txt (7.8 KB ) - added by janvw 13 years ago.
error2.txt (1.4 KB ) - added by janvw 13 years ago.

Download all attachments as: .zip

Change History (11)

by janvw, 13 years ago

Attachment: timeout.txt added

comment:1 by jng, 13 years ago

Milestone: Maestro-5.0

comment:2 by jng, 13 years ago

Should be fixed with r6545. Can you build from trunk to verify? Otherwise you will have to wait until I release the first beta of Maestro 5.0

in reply to:  2 comment:3 by janvw, 13 years ago

I built r6545 from trunk (but Maestro is showing 5.0.0.6514 under Help->About). The SQL server 2000 feature source can be saved now without problems (with validation turned off). However, when trying to create a new vector layer with this feature source (X/Y values are stored in the tables), Maestro is timing out and is giving out the 2 attached error messages.

by janvw, 13 years ago

Attachment: timeout2.txt added

by janvw, 13 years ago

Attachment: error2.txt added

comment:4 by jng, 13 years ago

Ok, basically anywhere where it does a full schema walk is going to be trouble for your 350 table database. And the Layer Definition editor is one such area (it does the full schema walk to populate the list of available feature classes)

I'll review the code base to see where such full schema walks are being done and to see if that is truly necessary.

But also keep an eye out for #2002. As this will let you reduce the attack surface of your database by building a slimmer configuration document, cutting down the number of tables/views that can be accessible to MapGuide.

in reply to:  4 comment:5 by janvw, 13 years ago

#2002 would be definitively a very useful enhancement to handle such big databases. In my specific case I was able to request for the creation of a "special user", that sees only a few (necessary) views of the database. But that won't be possible in other cases, so #2002 is important anyway.

comment:6 by jng, 13 years ago

Can you do this test for me?

Go to the mapagent test page.

Choose Feature -> GetSchemaMapping. Enter in the connection details for your 350 table sql server database and submit. Does this operation also take a super-long time to complete?

in reply to:  6 comment:7 by janvw, 13 years ago

The first time I accessed the database via the mapagent page it took about 3 minutes for the schema to appear. When repeating this operation, it took only about 3 seconds, but I guess the schema information had already been stored.

comment:8 by jng, 13 years ago

Resolution: fixed
Status: newclosed

Fixed with a combination of:

  • #2002: Allowing you to build a configuration with a slimmed down logical schema, by choosing the classes to include in the logical schema. A full schema walk is not required to present this list of classes to select from.
  • #2004: Eliminating the need to do a full schema walk throughout the Maestro codebase.
Note: See TracTickets for help on using tickets.