I think that there is regression in cx_Oracle==6.0b1. Passing number with 19 9's i.e. 9999999999999999999 to the cursor fails with OverflowError: Python int too large to convert to C long (18 9's works). Please find below regression test that fails in cx_Oracle==6.0b1 and works in cx_Oracle==5.3:
import cx_Oracle
connection = cx_Oracle.connect("user", "password", "TNS")
cursor = connection.cursor()
cursor.execute("select :arg0 from dual", {':arg0': -9999999999999999999})