0
den folgenden Python-Code Gegeben:Wie behandelt man die Ausnahme im "finally" -Block?
# Use impyla package to access Impala
from impala.dbapi import connect
import logging
def process():
conn = connect(host=host, port=port) # Mocking host and port
try:
cursor = conn.cursor()
# Execute query and fetch result
except:
loggin.error("Task failed with some exception")
finally:
cursor.close() # Exception here!
conn.close()
Die Verbindung zum Impala erstellt wurde. Aber es gab eine Ausnahme in cursor.close()
wegen Impala Timeout.
Was ist der richtige Weg, die cursor
und conn
angesichts der latenten Ausnahme zu schließen?
Bewegung der 'conn = verbinden (Host = Host, Port = Port) 'um Block zu versuchen. Exception wird ausgelöst, da es aus dem try-Block – Tanu
kommt Platziere die 'cursor.close()' im try-Block, Du musst diese Dinge in finally block setzen, die sicher keine Ausnahme verursachen – ZdaR
Exception könnte erzeugt werden, weil 'conn 'wurde nie gegründet. Versuchen Sie, diese Zeile erneut in "try" -Block zu setzen. –