diff --git a/pgadmin/debugger/dbgController.cpp b/pgadmin/debugger/dbgController.cpp
index 4f65c03..575bf80 100644
--- a/pgadmin/debugger/dbgController.cpp
+++ b/pgadmin/debugger/dbgController.cpp
@@ -78,7 +78,7 @@ const wxString dbgController::ms_cmdWaitForBreakpointV1(
     wxT("	(SELECT\n")
     wxT("		s.args\n")
     wxT("	 FROM pldbg_get_stack($1::INTEGER) s\n")
-    wxT("	 WHERE s.func = p.func AS s.pkg = p.pkg) AS args\n")
+    wxT("	 WHERE s.func = p.func AND s.pkg = p.pkg) AS args\n")
     wxT("FROM pldbg_wait_for_breakpoint($1::INTEGER) p"));
 const wxString dbgController::ms_cmdWaitForBreakpointV2(
     wxT("SELECT\n")
@@ -108,7 +108,7 @@ const wxString dbgController::ms_cmdStepOverV1(
     wxT("	(SELECT\n")
     wxT("		s.args\n")
     wxT("	 FROM pldbg_get_stack($1::INTEGER) s\n")
-    wxT("	 WHERE s.func = p.func AS s.pkg = p.pkg) AS args\n")
+    wxT("	 WHERE s.func = p.func AND s.pkg = p.pkg) AS args\n")
     wxT("FROM pldbg_step_over($1::INTEGER) p"));
 const wxString dbgController::ms_cmdStepOverV2(
     wxT("SELECT\n")
@@ -126,7 +126,7 @@ const wxString dbgController::ms_cmdStepIntoV1(
     wxT("	(SELECT\n")
     wxT("		s.args\n")
     wxT("	 FROM pldbg_get_stack($1::INTEGER) s\n")
-    wxT("	 WHERE s.func = p.func AS s.pkg = p.pkg) AS args\n")
+    wxT("	 WHERE s.func = p.func AND s.pkg = p.pkg) AS args\n")
     wxT("FROM pldbg_step_into($1::INTEGER) p"));
 const wxString dbgController::ms_cmdStepIntoV2(
     wxT("SELECT\n")
@@ -144,7 +144,7 @@ const wxString dbgController::ms_cmdContinueV1(
     wxT("	(SELECT\n")
     wxT("		s.args\n")
     wxT("	 FROM pldbg_get_stack($1::INTEGER) s\n")
-    wxT("	 WHERE s.func = p.func AS s.pkg = p.pkg) AS args\n")
+    wxT("	 WHERE s.func = p.func AND s.pkg = p.pkg) AS args\n")
     wxT("FROM pldbg_continue($1::INTEGER) p"));
 const wxString dbgController::ms_cmdContinueV2(
     wxT("SELECT\n")
@@ -174,7 +174,7 @@ const wxString dbgController::ms_cmdSelectFrameV1(
     wxT("	(SELECT\n")
     wxT("		s.args\n")
     wxT("	 FROM pldbg_get_stack($1::INTEGER) s\n")
-    wxT("	 WHERE s.func = p.func AS s.pkg = p.pkg) AS args\n")
+    wxT("	 WHERE s.func = p.func AND s.pkg = p.pkg) AS args\n")
     wxT("FROM pldbg_select_frame($1::INTEGER, $2::INTEGER) p"));
 const wxString dbgController::ms_cmdSelectFrameV2(
     wxT("SELECT\n")
@@ -506,16 +506,16 @@ bool dbgController::ExecuteTarget()
 		if (target->GetLanguage() == wxT("edbspl"))
 		{
 			strDebugCmdPkgInitializer = wxString::Format(
-			                                ms_cmdDebugSPLV1, target->GetPkgInitOid(), target->GetPkgOid());
+			                                ms_cmdDebugSPLV1, target->GetPkgOid(), target->GetPkgInitOid());
 			strDebugCmdTarget = wxString::Format(
-			                        ms_cmdDebugSPLV1, target->GetOid(), target->GetPkgOid());
+			                        ms_cmdDebugSPLV1, target->GetPkgOid(), target->GetOid());
 		}
 		else
 		{
 			strDebugCmdPkgInitializer = wxString::Format(
-			                                ms_cmdDebugPLPGSQLV1, target->GetPkgInitOid(), target->GetPkgOid());
+			                                ms_cmdDebugPLPGSQLV1, target->GetPkgOid(), target->GetPkgInitOid());
 			strDebugCmdTarget = wxString::Format(
-			                        ms_cmdDebugPLPGSQLV1, target->GetOid(), target->GetPkgOid());
+			                        ms_cmdDebugPLPGSQLV1, target->GetPkgOid(), target->GetOid());
 		}
 	}
 	else
diff --git a/pgadmin/debugger/dbgEvents.cpp b/pgadmin/debugger/dbgEvents.cpp
index bac466f..58e5ffd 100644
--- a/pgadmin/debugger/dbgEvents.cpp
+++ b/pgadmin/debugger/dbgEvents.cpp
@@ -300,8 +300,8 @@ void dbgController::ResultPortAttach(pgQueryResultEvent &_ev)
 				m_dbgThread->AddQuery(
 				    wxString::Format(
 				        ms_cmdSetBreakpointV1, m_model->GetSession().c_str(),
-				        breakpoint->GetFunctionOid().c_str(),
 				        breakpoint->GetPackageOid().c_str(),
+				        breakpoint->GetFunctionOid().c_str(),
 				        breakpoint->GetLineNo()),
 				    NULL, RESULT_ID_NEW_BREAKPOINT);
 			}
@@ -892,8 +892,8 @@ void dbgController::ResultListenerCreated(pgQueryResultEvent &_ev)
 					m_dbgThread->AddQuery(
 					    wxString::Format(
 					        ms_cmdAddBreakpointEDB, m_model->GetSession().c_str(),
-					        breakpoint->GetFunctionOid().c_str(),
 					        breakpoint->GetPackageOid().c_str(),
+					        breakpoint->GetFunctionOid().c_str(),
 					        m_model->GetTargetPid().c_str()),
 					    NULL, resultId);
 				}
diff --git a/pgadmin/debugger/dbgTargetInfo.cpp b/pgadmin/debugger/dbgTargetInfo.cpp
index ddc4197..11f3f5b 100644
--- a/pgadmin/debugger/dbgTargetInfo.cpp
+++ b/pgadmin/debugger/dbgTargetInfo.cpp
@@ -562,7 +562,7 @@ bool dbgTargetInfo::AddForExecution(pgQueryThread *_thread)
 			if (conn->BackendMinimumVersion(8, 4))
 			{
 				strQuery = wxT("DECLARE\n") +
-				           strDeclare + wxT("BEGIN\n") + strStatement + wxT("END;");
+				           strDeclare + wxT("BEGIN\n") + strStatement + wxT(";\nEND;");
 			}
 			else
 			{
diff --git a/pgadmin/debugger/dlgDirectDbg.cpp b/pgadmin/debugger/dlgDirectDbg.cpp
index cc0cba9..a693e9f 100644
--- a/pgadmin/debugger/dlgDirectDbg.cpp
+++ b/pgadmin/debugger/dlgDirectDbg.cpp
@@ -86,18 +86,21 @@ dlgDirectDbg::dlgDirectDbg(frmDebugger *_parent, dbgController *_controller,
 
 	LoadSettings();
 
-	for(int i = 0; i < 7; i++)
+	for(int i = 0; i < grdParams->GetNumberCols(); i++)
 		grdParams->AutoSizeColumn(i, true);
 
-	// Extend grid to it's parent width
-	grdParams->GetClientSize(&width, &height);
-	for (int i = 0; i < 6; i++)
+	if (grdParams->GetNumberCols() > 1)
 	{
-		totalWidth += grdParams->GetColumnWidth(i);
+		// Extend grid to it's parent width
+		grdParams->GetClientSize(&width, &height);
+		for (int i = 0; i < grdParams->GetNumberCols(); i++)
+		{
+			totalWidth += grdParams->GetColumnWidth(i);
+		}
+		// Total client width - total six column widths - the first (an empty) column
+		// width
+		grdParams->SetColumnWidth(COL_DEF_VAL, width - totalWidth - 100);
 	}
-	// Total client width - total six column widths - the first (an empty) column
-	// width
-	grdParams->SetColumnWidth(COL_DEF_VAL, width - totalWidth - 100);
 }
 
 
@@ -123,8 +126,10 @@ void dlgDirectDbg::PopulateParamGrid()
 
 	if (!args)
 	{
+		grdParams->CreateGrid(0, 1);
 		grdParams->SetColLabelValue(COL_NAME, _("No arguments required"));
 		grdParams->SetColSize(0, 350);
+
 		return;
 	}
 
