summaryrefslogtreecommitdiff
path: root/python/qadmin.py
diff options
context:
space:
mode:
Diffstat (limited to 'python/qadmin.py')
-rwxr-xr-xpython/qadmin.py32
1 files changed, 20 insertions, 12 deletions
diff --git a/python/qadmin.py b/python/qadmin.py
index 1e444d88..1d193fcf 100755
--- a/python/qadmin.py
+++ b/python/qadmin.py
@@ -673,8 +673,7 @@ class AdminConsole:
def cmd_connect(self, params):
qname = params.get('queue')
- if not qname:
- qname = self.cur_queue
+
if 'node' in params and not qname:
print 'node= needs a queue also'
return
@@ -694,18 +693,26 @@ class AdminConsole:
cstr = " ".join(cdata)
self.db = self.db_connect(cstr)
- # connect to node
- if 'node' in params:
+ # connect to queue
+ if qname:
curs = self.db.cursor()
- q = "select node_location from pgq_node.get_queue_locations(%s)"\
- " where node_name = %s"
- curs.execute(q, [qname, params['node']])
+ q = "select queue_name from pgq.get_queue_info(%s)"
+ curs.execute(q, [qname])
res = curs.fetchall()
if len(res) == 0:
- print "node not found"
+ print 'queue not found'
return
- cstr = res[0]['node_location']
- self.db = self.db_connect(cstr)
+
+ if 'node' in params:
+ q = "select node_location from pgq_node.get_queue_locations(%s)"\
+ " where node_name = %s"
+ curs.execute(q, [qname, params['node']])
+ res = curs.fetchall()
+ if len(res) == 0:
+ print "node not found"
+ return
+ cstr = res[0]['node_location']
+ self.db = self.db_connect(cstr)
# set default queue
if 'queue' in params:
@@ -740,10 +747,11 @@ class AdminConsole:
def cmd_show_queue(self, params):
queue = params.get('queue')
if queue is None:
+ # "show queue" without args, show all if not connected to
+ # specific queue
queue = self.cur_queue
if not queue:
- print 'No default queue'
- return
+ queue = '*'
curs = self.db.cursor()
fields = [
"queue_name",