dynamobi/dynamobi — Issue #530: [FRG-342] FarragoMedDataServer.closeAllocation is not invoked during CREATE OR REPLACE SERVER
Author: dynamobi-build
Created: 2011-12-30 03:33:36+00:00
State: open
Labels: FRG, SQL/MED

[reporter="stephan", created="Thu, 4 Sep 2008 16:00:44 -0500 (GMT-05:00)"]
FarragoMedDataServer.closeAllocation is not invoked during CREATE OR REPLACE SERVER.

It is eventually invoked when the FemMedDataServer is removed from its object cache (for instance, during shutdown). In the meantime, any resources allocated by the server are held even though the server itself cannot be accessed (since it was replaced by a new version).

Steps to reproduce:

1) Create a data server (copy, for example, sys_fem from farrago/initsql/createStorageWrappers.sql)

2) Create or replace server xxx with altered options.

3) The server's closeAllocation is not closed until later.

Note that the in-use server's allocation is closed if the server is dropped.

Probably need a call to validator.discardDataWrapper(server) at the right time in DdlMedHandler.

The same bug may exist for data wrappers.