[TD-530] fix query result leaks bug
This commit is contained in:
parent
5ed08273ac
commit
2f354c2174
|
@ -413,5 +413,5 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
print(data)
|
print(data)
|
||||||
|
|
||||||
cinter.freeresult(result)
|
cinter.freeResult(result)
|
||||||
cinter.close(conn)
|
cinter.close(conn)
|
|
@ -109,7 +109,6 @@ class TDengineCursor(object):
|
||||||
# TODO : change the exception raised here
|
# TODO : change the exception raised here
|
||||||
raise ProgrammingError("Cursor is not connected")
|
raise ProgrammingError("Cursor is not connected")
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
|
||||||
self._reset_result()
|
self._reset_result()
|
||||||
|
|
||||||
stmt = operation
|
stmt = operation
|
||||||
|
@ -202,7 +201,7 @@ class TDengineCursor(object):
|
||||||
for i in range(len(self._fields)):
|
for i in range(len(self._fields)):
|
||||||
buffer[i].extend(block[i])
|
buffer[i].extend(block[i])
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
self._reset_result()
|
||||||
|
|
||||||
return list(map(tuple, zip(*buffer)))
|
return list(map(tuple, zip(*buffer)))
|
||||||
|
|
||||||
|
@ -222,6 +221,8 @@ class TDengineCursor(object):
|
||||||
"""
|
"""
|
||||||
self._description = None
|
self._description = None
|
||||||
self._rowcount = -1
|
self._rowcount = -1
|
||||||
|
if self._result is not None:
|
||||||
|
CTaosInterface.freeResult(self._result)
|
||||||
self._result = None
|
self._result = None
|
||||||
self._fields = None
|
self._fields = None
|
||||||
self._block = None
|
self._block = None
|
||||||
|
|
|
@ -413,5 +413,5 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
print(data)
|
print(data)
|
||||||
|
|
||||||
cinter.freeresult(result)
|
cinter.freeResult(result)
|
||||||
cinter.close(conn)
|
cinter.close(conn)
|
|
@ -111,7 +111,6 @@ class TDengineCursor(object):
|
||||||
# TODO : change the exception raised here
|
# TODO : change the exception raised here
|
||||||
raise ProgrammingError("Cursor is not connected")
|
raise ProgrammingError("Cursor is not connected")
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
|
||||||
self._reset_result()
|
self._reset_result()
|
||||||
|
|
||||||
stmt = operation
|
stmt = operation
|
||||||
|
@ -204,7 +203,7 @@ class TDengineCursor(object):
|
||||||
for i in range(len(self._fields)):
|
for i in range(len(self._fields)):
|
||||||
buffer[i].extend(block[i])
|
buffer[i].extend(block[i])
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
self._reset_result()
|
||||||
|
|
||||||
return list(map(tuple, zip(*buffer)))
|
return list(map(tuple, zip(*buffer)))
|
||||||
|
|
||||||
|
@ -224,6 +223,8 @@ class TDengineCursor(object):
|
||||||
"""
|
"""
|
||||||
self._description = None
|
self._description = None
|
||||||
self._rowcount = -1
|
self._rowcount = -1
|
||||||
|
if self._result is not None:
|
||||||
|
CTaosInterface.freeResult(self._result)
|
||||||
self._result = None
|
self._result = None
|
||||||
self._fields = None
|
self._fields = None
|
||||||
self._block = None
|
self._block = None
|
||||||
|
@ -240,3 +241,4 @@ class TDengineCursor(object):
|
||||||
(ele['name'], ele['type'], None, None, None, None, False))
|
(ele['name'], ele['type'], None, None, None, None, False))
|
||||||
|
|
||||||
return self._result
|
return self._result
|
||||||
|
|
||||||
|
|
|
@ -413,5 +413,5 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
print(data)
|
print(data)
|
||||||
|
|
||||||
cinter.freeresult(result)
|
cinter.freeResult(result)
|
||||||
cinter.close(conn)
|
cinter.close(conn)
|
|
@ -102,7 +102,6 @@ class TDengineCursor(object):
|
||||||
# TODO : change the exception raised here
|
# TODO : change the exception raised here
|
||||||
raise ProgrammingError("Cursor is not connected")
|
raise ProgrammingError("Cursor is not connected")
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
|
||||||
self._reset_result()
|
self._reset_result()
|
||||||
|
|
||||||
stmt = operation
|
stmt = operation
|
||||||
|
@ -149,7 +148,7 @@ class TDengineCursor(object):
|
||||||
for i in range(len(self._fields)):
|
for i in range(len(self._fields)):
|
||||||
buffer[i].extend(block[i])
|
buffer[i].extend(block[i])
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
self._reset_result()
|
||||||
|
|
||||||
return list(map(tuple, zip(*buffer)))
|
return list(map(tuple, zip(*buffer)))
|
||||||
|
|
||||||
|
@ -171,6 +170,8 @@ class TDengineCursor(object):
|
||||||
"""
|
"""
|
||||||
self._description = None
|
self._description = None
|
||||||
self._rowcount = -1
|
self._rowcount = -1
|
||||||
|
if self._result is not None:
|
||||||
|
CTaosInterface.freeResult(self._result)
|
||||||
self._result = None
|
self._result = None
|
||||||
self._fields = None
|
self._fields = None
|
||||||
self._block = None
|
self._block = None
|
||||||
|
|
|
@ -413,5 +413,5 @@ if __name__ == '__main__':
|
||||||
|
|
||||||
print(data)
|
print(data)
|
||||||
|
|
||||||
cinter.freeresult(result)
|
cinter.freeResult(result)
|
||||||
cinter.close(conn)
|
cinter.close(conn)
|
|
@ -102,7 +102,6 @@ class TDengineCursor(object):
|
||||||
# TODO : change the exception raised here
|
# TODO : change the exception raised here
|
||||||
raise ProgrammingError("Cursor is not connected")
|
raise ProgrammingError("Cursor is not connected")
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
|
||||||
self._reset_result()
|
self._reset_result()
|
||||||
|
|
||||||
stmt = operation
|
stmt = operation
|
||||||
|
@ -149,7 +148,7 @@ class TDengineCursor(object):
|
||||||
for i in range(len(self._fields)):
|
for i in range(len(self._fields)):
|
||||||
buffer[i].extend(block[i])
|
buffer[i].extend(block[i])
|
||||||
|
|
||||||
self._connection.clear_result_set()
|
self._reset_result()
|
||||||
|
|
||||||
return list(map(tuple, zip(*buffer)))
|
return list(map(tuple, zip(*buffer)))
|
||||||
|
|
||||||
|
@ -171,6 +170,8 @@ class TDengineCursor(object):
|
||||||
"""
|
"""
|
||||||
self._description = None
|
self._description = None
|
||||||
self._rowcount = -1
|
self._rowcount = -1
|
||||||
|
if self._result is not None:
|
||||||
|
CTaosInterface.freeResult(self._result)
|
||||||
self._result = None
|
self._result = None
|
||||||
self._fields = None
|
self._fields = None
|
||||||
self._block = None
|
self._block = None
|
||||||
|
|
Loading…
Reference in New Issue