diff --git a/asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java b/asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
index 1a5fc34..600abab 100644
--- a/asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
+++ b/asterix-bad/src/main/java/org/apache/asterix/bad/lang/BADStatementExecutor.java
@@ -297,7 +297,7 @@
 
     @Override
     protected void handleDataverseDropStatement(MetadataProvider metadataProvider, Statement stmt,
-            IHyracksClientConnection hcc) throws Exception {
+            IHyracksClientConnection hcc, IRequestParameters requestParameters) throws Exception {
         MetadataTransactionContext mdTxnCtx = MetadataManager.INSTANCE.beginTransaction();
         metadataProvider.setMetadataTxnContext(mdTxnCtx);
         Identifier dvId = ((DataverseDropStatement) stmt).getDataverseName();
@@ -333,8 +333,6 @@
                 }
             }
         }
-        final IRequestParameters requestParameters =
-                new RequestParameters(null, null, null, null, null, null, null, true);
         for (Channel channel : channels) {
             if (!channel.getChannelId().getDataverse().equals(dvId.getValue())) {
                 continue;
@@ -360,7 +358,7 @@
             drop.handle(hcc, this, requestParameters, tempMdProvider, 0, null);
         }
         MetadataManager.INSTANCE.commitTransaction(mdTxnCtx);
-        super.handleDataverseDropStatement(metadataProvider, stmt, hcc);
+        super.handleDataverseDropStatement(metadataProvider, stmt, hcc, requestParameters);
     }
 
 }
