@@ -81,13 +81,14 @@ def _nextset(self, unbuffered=False):
8181 if not current_result .has_next :
8282 raise gen .Return ()
8383 yield conn .next_result (unbuffered = unbuffered )
84- self ._do_get_result ()
84+ yield self ._do_get_result ()
8585 raise gen .Return (True )
8686
8787 @gen .coroutine
8888 def nextset (self ):
8989 """Get the next query set"""
90- raise gen .Return (yield self ._nextset (False ))
90+ res = yield self ._nextset (False )
91+ raise gen .Return (res )
9192
9293 def _escape_args (self , args , conn ):
9394 if isinstance (args , (tuple , list )):
@@ -280,8 +281,9 @@ def _query(self, q):
280281 conn = self ._get_db ()
281282 self ._last_executed = q
282283 yield conn .query (q )
283- self ._do_get_result ()
284+ yield self ._do_get_result ()
284285
286+ @gen .coroutine
285287 def _do_get_result (self ):
286288 conn = self ._get_db ()
287289
@@ -294,10 +296,11 @@ def _do_get_result(self):
294296 self ._rows = result .rows
295297
296298 if result .warning_count > 0 :
297- self ._show_warnings (conn )
299+ yield self ._show_warnings (conn )
298300
301+ @gen .coroutine
299302 def _show_warnings (self , conn ):
300- ws = conn .show_warnings ()
303+ ws = yield conn .show_warnings ()
301304 for w in ws :
302305 warnings .warn (w [- 1 ], err .Warning , 4 )
303306
@@ -320,8 +323,9 @@ class DictCursorMixin(object):
320323 # You can override this to use OrderedDict or other dict-like types.
321324 dict_type = dict
322325
326+ @gen .coroutine
323327 def _do_get_result (self ):
324- super (DictCursorMixin , self )._do_get_result ()
328+ yield super (DictCursorMixin , self )._do_get_result ()
325329 fields = []
326330 if self .description :
327331 for f in self ._result .fields :
@@ -383,14 +387,15 @@ def _query(self, q):
383387 conn = self ._get_db ()
384388 self ._last_executed = q
385389 yield conn .query (q , unbuffered = True )
386- self ._do_get_result ()
390+ yield self ._do_get_result ()
387391 raise gen .Return (self .rowcount )
388392
389393 @gen .coroutine
390394 def nextset (self ):
391- raise gen .Return (yield self ._nextset (True ))
395+ res = yield self ._nextset (True )
396+ raise gen .Return (res )
392397
393- > >> >> >> pymysql / master : pymysql / cursors . py
398+ @ gen . coroutine
394399 def read_next (self ):
395400 """ Read next row """
396401 row = yield self ._result ._read_rowdata_packet_unbuffered ()
0 commit comments