[ 
https://issues.apache.org/jira/browse/DERBY-4822?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
 ]

Martin Monperrus updated DERBY-4822:
------------------------------------

    Attachment: patch.txt

Hi Kristian,

Thanks for the answer. Here is the patch as file+license granting. 

--Martin

> [patch] DropSchemaConstantAction: could reuse the current connection provided 
> by the available activation object
> ----------------------------------------------------------------------------------------------------------------
>
>                 Key: DERBY-4822
>                 URL: https://issues.apache.org/jira/browse/DERBY-4822
>             Project: Derby
>          Issue Type: Improvement
>          Components: Network Server
>            Reporter: Martin Monperrus
>            Priority: Minor
>         Attachments: patch.txt
>
>
> In DropSchemaConstantAction.executeConstantAction, getSchemaDescriptor is 
> called with a null parameter. Instead, one could reuse the current 
> transaction controller directly available with 
> "activation.getLanguageConnectionContext().getTransactionExecute()" as it's 
> done with other subclasses of DDLConstantAction. 
> Regards, --Martin
> Index: 
> java/engine/org/apache/derby/impl/sql/execute/DropSchemaConstantAction.java
> ===================================================================
> --- 
> java/engine/org/apache/derby/impl/sql/execute/DropSchemaConstantAction.java 
> (revision 1001658)
> +++ 
> java/engine/org/apache/derby/impl/sql/execute/DropSchemaConstantAction.java 
> (working copy)
> @@ -27,6 +27,7 @@
>  import org.apache.derby.iapi.sql.dictionary.DataDictionary;
>  import org.apache.derby.iapi.sql.dictionary.SchemaDescriptor;
>  import org.apache.derby.iapi.sql.execute.ConstantAction;
> +import org.apache.derby.iapi.store.access.TransactionController;
>  
>  /**
>   *     This class  describes actions that are ALWAYS performed for a
> @@ -82,6 +83,7 @@
>         {
>                 LanguageConnectionContext lcc = 
> activation.getLanguageConnectionContext();
>                 DataDictionary dd = lcc.getDataDictionary();
> +               TransactionController tc = lcc.getTransactionExecute();
>  
>                 /*
>                 ** Inform the data dictionary that we are about to write to 
> it.
> @@ -94,7 +96,7 @@
>                 */
>                 dd.startWriting(lcc);
>  
> -        SchemaDescriptor sd = dd.getSchemaDescriptor(schemaName, null, true);
> +        SchemaDescriptor sd = dd.getSchemaDescriptor(schemaName, tc, true);
>  
>          sd.drop(lcc, activation);

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.

Reply via email to