Open
Description
-
What versions are you using?
3.1.0, repro in python 3.9 and 3.12, issue is on client side I think, DB version is irrelevant -
Is it an error or a hang or a crash?
Hard crash, segfault -
What error(s) or behavior you are seeing?
Segmentation fault -
Does your application call init_oracle_client()?
Reproduces both in thin and thick mode -
Include a runnable Python script that shows the problem.
import oracledb
# this is copy&paste from doc
def output_type_handler(cursor, metadata):
def out_converter(d):
if isinstance(d, str):
return f"{d} was a string"
else:
return f"{d} was not a string"
if metadata.type_code is oracledb.DB_TYPE_NUMBER:
return cursor.var(
oracledb.DB_TYPE_VARCHAR,
arraysize=cursor.arraysize,
outconverter=out_converter,
)
conn = oracledb.connect("...")
# comment out the line below and the issue goes away
conn.outputtypehandler = output_type_handler
sql = "select 1 n from dual"
t = conn.fetch_df_all(sql)
print(t)