cx-oracle-users Mailing List for cx_Oracle (Page 3)
Brought to you by:
atuining
You can subscribe to this list here.
2003 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
(5) |
Aug
(9) |
Sep
(8) |
Oct
(12) |
Nov
(4) |
Dec
(8) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2004 |
Jan
(15) |
Feb
(12) |
Mar
(11) |
Apr
(5) |
May
(7) |
Jun
(8) |
Jul
(12) |
Aug
(2) |
Sep
(14) |
Oct
(17) |
Nov
(20) |
Dec
(3) |
2005 |
Jan
(16) |
Feb
(9) |
Mar
(22) |
Apr
(21) |
May
(73) |
Jun
(16) |
Jul
(15) |
Aug
(10) |
Sep
(32) |
Oct
(35) |
Nov
(22) |
Dec
(13) |
2006 |
Jan
(42) |
Feb
(36) |
Mar
(13) |
Apr
(18) |
May
(8) |
Jun
(17) |
Jul
(24) |
Aug
(30) |
Sep
(35) |
Oct
(33) |
Nov
(33) |
Dec
(11) |
2007 |
Jan
(35) |
Feb
(31) |
Mar
(35) |
Apr
(64) |
May
(38) |
Jun
(12) |
Jul
(18) |
Aug
(34) |
Sep
(75) |
Oct
(29) |
Nov
(51) |
Dec
(11) |
2008 |
Jan
(27) |
Feb
(46) |
Mar
(48) |
Apr
(36) |
May
(59) |
Jun
(42) |
Jul
(25) |
Aug
(34) |
Sep
(57) |
Oct
(97) |
Nov
(59) |
Dec
(57) |
2009 |
Jan
(48) |
Feb
(48) |
Mar
(45) |
Apr
(24) |
May
(46) |
Jun
(52) |
Jul
(52) |
Aug
(37) |
Sep
(27) |
Oct
(40) |
Nov
(37) |
Dec
(13) |
2010 |
Jan
(16) |
Feb
(9) |
Mar
(24) |
Apr
(6) |
May
(27) |
Jun
(28) |
Jul
(60) |
Aug
(16) |
Sep
(33) |
Oct
(20) |
Nov
(39) |
Dec
(30) |
2011 |
Jan
(23) |
Feb
(43) |
Mar
(16) |
Apr
(29) |
May
(23) |
Jun
(16) |
Jul
(10) |
Aug
(8) |
Sep
(18) |
Oct
(42) |
Nov
(26) |
Dec
(20) |
2012 |
Jan
(17) |
Feb
(27) |
Mar
|
Apr
(20) |
May
(18) |
Jun
(7) |
Jul
(24) |
Aug
(21) |
Sep
(23) |
Oct
(18) |
Nov
(12) |
Dec
(5) |
2013 |
Jan
(14) |
Feb
(10) |
Mar
(20) |
Apr
(65) |
May
(3) |
Jun
(8) |
Jul
(6) |
Aug
(3) |
Sep
|
Oct
(3) |
Nov
(28) |
Dec
(3) |
2014 |
Jan
(3) |
Feb
(9) |
Mar
(4) |
Apr
(7) |
May
(20) |
Jun
(2) |
Jul
(20) |
Aug
(7) |
Sep
(11) |
Oct
(8) |
Nov
(6) |
Dec
(12) |
2015 |
Jan
(16) |
Feb
(10) |
Mar
(14) |
Apr
(8) |
May
|
Jun
(8) |
Jul
(15) |
Aug
(7) |
Sep
(1) |
Oct
(33) |
Nov
(8) |
Dec
(5) |
2016 |
Jan
(18) |
Feb
(12) |
Mar
(6) |
Apr
(14) |
May
(5) |
Jun
(3) |
Jul
|
Aug
(21) |
Sep
|
Oct
(15) |
Nov
(8) |
Dec
|
2017 |
Jan
|
Feb
(14) |
Mar
(21) |
Apr
(9) |
May
(6) |
Jun
(11) |
Jul
(23) |
Aug
(6) |
Sep
(5) |
Oct
(7) |
Nov
(1) |
Dec
(1) |
2018 |
Jan
|
Feb
|
Mar
(16) |
Apr
(2) |
May
(1) |
Jun
|
Jul
(2) |
Aug
|
Sep
(2) |
Oct
|
Nov
|
Dec
|
2019 |
Jan
(2) |
Feb
(3) |
Mar
(1) |
Apr
(1) |
May
|
Jun
|
Jul
(2) |
Aug
(1) |
Sep
(2) |
Oct
|
Nov
|
Dec
(1) |
2020 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
(2) |
Jun
(1) |
Jul
(4) |
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
(3) |
2021 |
Jan
|
Feb
(5) |
Mar
|
Apr
(7) |
May
(6) |
Jun
(1) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
(1) |
Dec
|
2022 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2023 |
Jan
|
Feb
(1) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Anthony T. <ant...@gm...> - 2018-04-27 01:06:19
|
What is cx_Oracle? cx_Oracle is a Python extension module that enables access to Oracle Database for Python 3.x and 2.x and conforms to the Python database API 2.0 specifications with a number of enhancements. Where do I get it? https://oracle.github.io/python-cx_Oracle The easiest method to install/upgrade cx_Oracle is via pip as in python -m pip install cx_Oracle --upgrade What's new? This release addresses a number of issues and bug fixes. The changes needed to support DML Returning with cursor.executemany() required a new point release since the attribute dml_ret_array_val in the cx_Oracle.__future__ object needs to be set in order for it to work correctly. Setting it changes the behavior for DML Returning statements with cursor.execute() as well and will become the new behavior in cx_Oracle 7. See the release notes for more information. http://cx-oracle.readthedocs.io/en/latest/releasenotes.html#version-6-3-april-2018 Please provide any feedback via GitHub issues ( https://github.com/oracle/python-cx_Oracle/issues). |
From: Stéphane J. <ste...@ju...> - 2018-03-20 09:33:04
|
Hi, Thanks a lot you for your help. With Python 2, I have no problem. I set encoding to 'WINDOW-1252' and my output type handler decodes using errosr='ignore'. The result of select * from nls_database_parameters where parameter in ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET'); is : NLS_NCHAR_CHARACTERSET AL16UTF16 NLS_CHARACTERSET WE8MSWIN1252 In Python 3, I always use : *cx_Oracle.Connection(user, password, dsn, threaded, encoding = 'WINDOWS-1252',nencoding = "UTF-8")* and my python 3 crashes. Data are not corrupted by a Python program but by an old power builder program we can't correct. I tried setting NLS_LANG with the same result. I will log a request to add a mean to specify the errors parameter in the decode at least for Python 3. Best wishes. Stéphane |
From: Anthony T. <ant...@gm...> - 2018-03-19 21:44:36
|
Hi, As Walter mentioned, you can set the environment variable NLS_LANG or you can set the encoding parameter when you create the connection. The latter is usually preferable and easier to use. For example: cx_Oracle.connect("user/pw@dsn", encoding = "WINDOWS-1252", nencoding = "UTF-8") This will ensure that all data is encoded using the actual database character set. If you use something different you do run the risk of getting encoding errors, and currently there is no way in cx_Oracle to specify the "errors" parameter to the decode() that takes place internally. That could be an enhancement request. Feel free to log such a request on the issues page: https://github.com/oracle/python-cx_Oracle/issues. It might also be useful to include information on the character sets in use in your database by posting the results of this query: select * from nls_database_parameters where parameter in ('NLS_CHARACTERSET', 'NLS_NCHAR_CHARACTERSET'); Anthony On Fri, Mar 16, 2018 at 7:58 AM, Stéphane JULIEN <ste...@ju...> wrote: > Hello, > > I have a WINDOWS-1252 (cp1252) encoded Oracle database. A 6.2.1 cx_Oracle > and a Python 3.6.4 distribution on Wondows. > > In some VARCHAR2 record of a table, I have corrupted data. When I try to > select such records, I have : > > 'charmap' codec can't decode byte 0x90 in position 36: character maps to > <undefi > ned> > (<class 'UnicodeDecodeError'>, UnicodeDecodeError('charmap', b'ELLE > REVIENDRA VE > RS NOUS - BIEN PLAC*\x90*\xc9S - ELLE ATTEND SON CLIENT', 36, 37, > 'character maps > to <undefined>'), <traceback object at 0x0000000003C6B5C8>) > > The \x90 character is not allowed in cp1252 encoding. Where cx_Oracle > tries to convert to unicode, there is an exception. I suppose that a strict > decode is used. > > I can't find a way to prevent or detect the crash. I can't event find a > way to detect the key of the corrupted record. > > Is there a way to do a *decode(..., 'IGNORE')* in my Python Program or to > receive the binary data like in Python 2 ? > > I thank you for your help. > > Best wishes. > Stéphane > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > |
From: Anthony T. <ant...@gm...> - 2018-03-19 20:38:59
|
Hi Matt, Are you able to test using the InsertGeometry.py sample? Or is it just this particular script that is failing and other scripts manipulating SDO_GEOMETRY are working fine for you? I just tried using this using cx_Oracle 6.2.1 with Oracle Client/Database 12.2 and did not experience the same problems you are. Anthony On Mon, Mar 19, 2018 at 6:47 AM, Matt <ma...@re...er> wrote: > Hi, > > > > I’m using cx_oracle in a little Python script to import / update Spatial > data in a table column (column type MDSYS.SDO_GEOMETRY). This worked pretty > well for more than a year, until I faced now the following error message: > > > > ORA-29877: failed in the execution of the ODCIINDEXUPDATE routine > > ORA-13032: Invalid NULL SDO_GEOMETRY object > > ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 480 > > > > My script was trying to execute an UPDATE statement to update the content > of the SDO_GEOMETRY column based on the following source information: > > > > <SDO_GEOMETRY> > > <SDO_GTYPE>2001</SDO_GTYPE> > > <SDO_SRID /> > > <SDO_POINT> > > <X>0</X> > > <Y>0</Y> > > <Z /> > > </SDO_POINT> > > <SDO_ELEM_INFO /> > > <SDO_ORDINATES /> > > </SDO_GEOMETRY> > > > > Based on this data, my cx_oracle SDO_GEOMETRY object would be initialized > with the following data: > > > > typeObj = dbConn.gettype("MDSYS.SDO_GEOMETRY") > > obj = typeObj.newobject() > > obj.SDO_GTYPE = 2001 > > obj.SDO_POINT = pointTypeObj.newobject() > > obj.SDO_POINT.X = 0 > > obj.SDO_POINT.Y = 0 > > obj.SDO_POINT.Z = None > > > > and an UPDATE like the following will be executed afterwards with the > geometry object and the ID of the record in the database: > > > > UPDATE data_user.sdo_table SET geometry_data = :1 WHERE id = :2 > > > > This will cause the mentioned Oracle error stack (for only this record): > > > > ORA-29877: failed in the execution of the ODCIINDEXUPDATE routine > > ORA-13032: Invalid NULL SDO_GEOMETRY object > > ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 480 > > > > When I’m executing the update manually in SQL*Plus this works fine: > > > > UPDATE data_user.sdo_table SET geometry_data = SDO_GEOMETRY(2001, NULL, > SDO_POINT_TYPE(0, 0, NULL), NULL, NULL) where id = 100001; > > > > Not sure if I missed something if there is no data for Z, if this has > something to do with my Oracle version or if this could be cx_oracle > related. > > > > Thanks a lot for any hint / help in advance! > > > > Best, > > Matt > > > > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > |
From: Walter <wa...@li...> - 2018-03-19 15:04:55
|
On 19 Mar 2018, at 13:35, Stéphane JULIEN wrote: > Hello, > > I downgraded Python to version 2.7. Then, I was able to have access to > the > corrupted data because there is no automatic cp1252 decoding with > Python 2. > Is there a way to prevent the automatic decoding with python 3 ? I > found no > solution at this time. Couldn't you set NLS_LANG to AMERICAN_AMERICA.WE8ISO8859P1, and read the data with that? Then you could at least find out what the broken record is, and fix it by hand? > Best wishes. > > Stéphane Servus, Walter |
From: Matt <ma...@re...> - 2018-03-19 12:47:17
|
Hi, I’m using cx_oracle in a little Python script to import / update Spatial data in a table column (column type MDSYS.SDO_GEOMETRY). This worked pretty well for more than a year, until I faced now the following error message: ORA-29877: failed in the execution of the ODCIINDEXUPDATE routine ORA-13032: Invalid NULL SDO_GEOMETRY object ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 480 My script was trying to execute an UPDATE statement to update the content of the SDO_GEOMETRY column based on the following source information: <SDO_GEOMETRY> <SDO_GTYPE>2001</SDO_GTYPE> <SDO_SRID /> <SDO_POINT> <X>0</X> <Y>0</Y> <Z /> </SDO_POINT> <SDO_ELEM_INFO /> <SDO_ORDINATES /> </SDO_GEOMETRY> Based on this data, my cx_oracle SDO_GEOMETRY object would be initialized with the following data: typeObj = dbConn.gettype("MDSYS.SDO_GEOMETRY") obj = typeObj.newobject() obj.SDO_GTYPE = 2001 obj.SDO_POINT = pointTypeObj.newobject() obj.SDO_POINT.X = 0 obj.SDO_POINT.Y = 0 obj.SDO_POINT.Z = None and an UPDATE like the following will be executed afterwards with the geometry object and the ID of the record in the database: UPDATE data_user.sdo_table SET geometry_data = :1 WHERE id = :2 This will cause the mentioned Oracle error stack (for only this record): ORA-29877: failed in the execution of the ODCIINDEXUPDATE routine ORA-13032: Invalid NULL SDO_GEOMETRY object ORA-06512: at "MDSYS.SDO_INDEX_METHOD_10I", line 480 When I’m executing the update manually in SQL*Plus this works fine: UPDATE data_user.sdo_table SET geometry_data = SDO_GEOMETRY(2001, NULL, SDO_POINT_TYPE(0, 0, NULL), NULL, NULL) where id = 100001; Not sure if I missed something if there is no data for Z, if this has something to do with my Oracle version or if this could be cx_oracle related. Thanks a lot for any hint / help in advance! Best, Matt |
From: Stéphane J. <ste...@ju...> - 2018-03-19 12:36:27
|
Hello, I downgraded Python to version 2.7. Then, I was able to have access to the corrupted data because there is no automatic cp1252 decoding with Python 2. Is there a way to prevent the automatic decoding with python 3 ? I found no solution at this time. Best wishes. Stéphane |
From: Stéphane J. <ste...@ju...> - 2018-03-16 14:00:14
|
Hello, I have a WINDOWS-1252 (cp1252) encoded Oracle database. A 6.2.1 cx_Oracle and a Python 3.6.4 distribution on Wondows. In some VARCHAR2 record of a table, I have corrupted data. When I try to select such records, I have : 'charmap' codec can't decode byte 0x90 in position 36: character maps to <undefi ned> (<class 'UnicodeDecodeError'>, UnicodeDecodeError('charmap', b'ELLE REVIENDRA VE RS NOUS - BIEN PLAC\X90\xc9S - ELLE ATTEND SON CLIENT', 36, 37, 'character maps to <undefined>'), <traceback object at 0x0000000003C6B5C8>) The \x90 character is not allowed in cp1252 encoding. Where cx_Oracle tries to convert to unicode, there is an exception. I suppose that a strict decode is used. I can't find a way to prevent or detect the crash. I can't event find a way to detect the key of the corrupted record. Is there a way to do a DECODE(..., 'IGNORE') in my Python Program or to receive the binary data like in Python 2 ? I thank you for your help. Best wishes. Stéphane |
From: Anthony T. <ant...@gm...> - 2018-03-08 16:02:59
|
On Thu, Mar 8, 2018 at 4:43 AM, Walter Dörwald <wa...@li...> wrote: > On 7 Mar 2018, at 19:20, Anthony Tuininga wrote: > > Walter, >> >> I just pushed a new release (cx_Oracle 6.2.1) since the correction of the >> source package seems to have disabled binary wheels. Can you give it a >> whirl now and let me know if it corrects your issue as well? >> > > 6.2.1 did indeed work (both on the Mac and on Windows) without any > problems. > > Thanks! > You're welcome! And lesson learned: don't bother to correct any packaging issues in place; just create a new release. :-) Anthony |
From: Walter <wa...@li...> - 2018-03-08 11:43:14
|
On 7 Mar 2018, at 19:20, Anthony Tuininga wrote: > Walter, > > I just pushed a new release (cx_Oracle 6.2.1) since the correction of > the > source package seems to have disabled binary wheels. Can you give it a > whirl now and let me know if it corrects your issue as well? 6.2.1 did indeed work (both on the Mac and on Windows) without any problems. Thanks! > Anthony > > On Wed, Mar 7, 2018 at 9:48 AM, Anthony Tuininga > <ant...@gm... >> wrote: > >> Hi Walter, >> >> Can you take a look at the code in pip and see what it is complaining >> about? And/or add some additional logging (pip -v -v -v install >> cx_Oracle). >> I see that it is downloading source as well, not a binary wheel. I >> just >> tried that on Windows and Linux and neither of them download the >> binary >> wheels. I'm not sure if this is due to the turmoil surrounding the >> upgrade >> to Warehouse or something else. I'm looking into it. >> >> Anthony >> >> On Wed, Mar 7, 2018 at 9:14 AM, Walter Dörwald >> <wa...@li...> >> wrote: >> >>> On 6 Mar 2018, at 18:19, Anthony Tuininga wrote: >>> >>> Hi Walter, >>> >>> This error is due to the fact that cxoModule.h is a file with a new >>> extension so it wasn't covered by MANIFEST.in. >>> I have corrected that and >>> also uploaded a revised source package so this should be corrected >>> now. >>> Apologies for the inconvenience! >>> >>> Thanks! Now the installation worked on my Mac. >>> >>> However on a (german) Windows 10, we get the following error: >>> >>> C:\Users\hannes>pip install cx_Oracle >>> […] >>> >>> Servus, >>> Walter Servus, Walter |
From: Anthony T. <ant...@gm...> - 2018-03-07 18:20:55
|
Walter, I just pushed a new release (cx_Oracle 6.2.1) since the correction of the source package seems to have disabled binary wheels. Can you give it a whirl now and let me know if it corrects your issue as well? Anthony On Wed, Mar 7, 2018 at 9:48 AM, Anthony Tuininga <ant...@gm... > wrote: > Hi Walter, > > Can you take a look at the code in pip and see what it is complaining > about? And/or add some additional logging (pip -v -v -v install cx_Oracle). > I see that it is downloading source as well, not a binary wheel. I just > tried that on Windows and Linux and neither of them download the binary > wheels. I'm not sure if this is due to the turmoil surrounding the upgrade > to Warehouse or something else. I'm looking into it. > > Anthony > > On Wed, Mar 7, 2018 at 9:14 AM, Walter Dörwald <wa...@li...> > wrote: > >> On 6 Mar 2018, at 18:19, Anthony Tuininga wrote: >> >> Hi Walter, >> >> This error is due to the fact that cxoModule.h is a file with a new >> extension so it wasn't covered by MANIFEST.in. >> I have corrected that and >> also uploaded a revised source package so this should be corrected now. >> Apologies for the inconvenience! >> >> Thanks! Now the installation worked on my Mac. >> >> However on a (german) Windows 10, we get the following error: >> >> C:\Users\hannes>pip install cx_Oracle >> Collecting cx_Oracle >> Downloading cx_Oracle-6.2-2.tar.gz (240kB) >> 100% |████████████████████████████████| 245kB 1.6MB/s >> Installing collected packages: cx-Oracle >> Running setup.py install for cx-Oracle ... error >> Exception: >> Traceback (most recent call last): >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__.py", line 73, in console_to_str >> return s.decode(sys.__stdout__.encoding) >> UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 93: invalid start byte >> >> During handling of the above exception, another exception occurred: >> >> Traceback (most recent call last): >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\basecommand.py", line 215, in main >> status = self.run(options, args) >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\commands\install.py", line 342, in run >> prefix=options.prefix_path, >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\req\req_set.py", line 784, in install >> **kwargs >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\req\req_install.py", line 878, in install >> spinner=spinner, >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\utils\__init__.py", line 676, in call_subprocess >> line = console_to_str(proc.stdout.readline()) >> File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__.py", line 75, in console_to_str >> return s.decode('utf_8') >> UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 93: invalid start byte >> >> Anthony >> >> On Tue, Mar 6, 2018 at 4:02 AM, Walter Dörwald <wa...@li...> >> wrote: >> >> On 6 Mar 2018, at 0:53, Anthony Tuininga wrote: >> >> What is cx_Oracle? >> >> cx_Oracle is a Python extension module that enables access to Oracle >> Database for Python 3.x and 2.x and conforms to the Python database API >> 2.0 >> specifications with a number of enhancements. >> >> I get an error when upgrading: >> >> pip install --upgrade cx_Oracle >> Collecting cx_Oracle >> Downloading cx_Oracle-6.2.tar.gz (237kB) >> 100% |████████████████████████████████| 245kB 2.5MB/s >> Installing collected packages: cx-Oracle >> Found existing installation: cx-Oracle 6.1 >> Uninstalling cx-Oracle-6.1: >> Successfully uninstalled cx-Oracle-6.1 >> Running setup.py install for cx-Oracle ... error >> Complete output from command /Users/walter/pyvenvs/default/bin/python3.6 >> -u -c "import setuptools, tokenize;__file__='/private/va >> r/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build- >> ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, 'open', >> open)(__file__);code=f.read().replace('\r\n', >> '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record >> /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip- >> a0f8egs7-record/install-record.txt --single-version-externally-managed >> --compile --install-headers /Users/walter/pyvenvs/default/ >> include/site/python3.6/cx-Oracle: >> running install >> running build >> running build_ext >> building 'cx_Oracle' extension >> creating build >> creating build/temp.macosx-10.13-x86_64-3.6 >> creating build/temp.macosx-10.13-x86_64-3.6/src >> creating build/temp.macosx-10.13-x86_64-3.6/odpi >> creating build/temp.macosx-10.13-x86_64-3.6/odpi/src >> clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common >> -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch x86_64 >> -DCXO_BUILD_VERSION=6.2 -Iodpi/include -Iodpi/src -I/usr/local/include >> -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include >> -I/Users/walter/pyvenvs/default/include -I/usr/local/Cellar/python/3.6 >> .4_3/Frameworks/Python.framework/Versions/3.6/include/python3.6m -c >> src/cxoBuffer.c -o build/temp.macosx-10.13-x86_64-3.6/src/cxoBuffer.o >> src/cxoBuffer.c:17:10: fatal error: 'cxoModule.h' file not found >> #include "cxoModule.h" >> ^~~~~~~~~~~~~ >> 1 error generated. >> error: command 'clang' failed with exit status 1 >> >> ---------------------------------------- >> Rolling back uninstall of cx-Oracle >> Command "/Users/walter/pyvenvs/default/bin/python3.6 -u -c "import >> setuptools, tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxd >> ftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, >> 'open', open)(__file__);code=f.read().replace('\r\n', >> '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record >> /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip- >> a0f8egs7-record/install-record.txt --single-version-externally-managed >> --compile --install-headers /Users/walter/pyvenvs/default/ >> include/site/python3.6/cx-Oracle" failed with error code 1 in >> /private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/ >> pip-build-ovkqpskf/cx-Oracle/ >> >> […] >> >> Servus, >> Walter >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> cx-oracle-users mailing list >> cx-...@li... >> https://lists.sourceforge.net/lists/listinfo/cx-oracle-users >> >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot______ >> _________________________________________ >> cx-oracle-users mailing list >> cx-...@li... >> https://lists.sourceforge.net/lists/listinfo/cx-oracle-users >> >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> cx-oracle-users mailing list >> cx-...@li... >> https://lists.sourceforge.net/lists/listinfo/cx-oracle-users >> >> > |
From: Anthony T. <ant...@gm...> - 2018-03-07 16:48:33
|
Hi Walter, Can you take a look at the code in pip and see what it is complaining about? And/or add some additional logging (pip -v -v -v install cx_Oracle). I see that it is downloading source as well, not a binary wheel. I just tried that on Windows and Linux and neither of them download the binary wheels. I'm not sure if this is due to the turmoil surrounding the upgrade to Warehouse or something else. I'm looking into it. Anthony On Wed, Mar 7, 2018 at 9:14 AM, Walter Dörwald <wa...@li...> wrote: > On 6 Mar 2018, at 18:19, Anthony Tuininga wrote: > > Hi Walter, > > This error is due to the fact that cxoModule.h is a file with a new > extension so it wasn't covered by MANIFEST.in. > I have corrected that and > also uploaded a revised source package so this should be corrected now. > Apologies for the inconvenience! > > Thanks! Now the installation worked on my Mac. > > However on a (german) Windows 10, we get the following error: > > C:\Users\hannes>pip install cx_Oracle > Collecting cx_Oracle > Downloading cx_Oracle-6.2-2.tar.gz (240kB) > 100% |████████████████████████████████| 245kB 1.6MB/s > Installing collected packages: cx-Oracle > Running setup.py install for cx-Oracle ... error > Exception: > Traceback (most recent call last): > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__.py", line 73, in console_to_str > return s.decode(sys.__stdout__.encoding) > UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 93: invalid start byte > > During handling of the above exception, another exception occurred: > > Traceback (most recent call last): > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\basecommand.py", line 215, in main > status = self.run(options, args) > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\commands\install.py", line 342, in run > prefix=options.prefix_path, > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\req\req_set.py", line 784, in install > **kwargs > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\req\req_install.py", line 878, in install > spinner=spinner, > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\utils\__init__.py", line 676, in call_subprocess > line = console_to_str(proc.stdout.readline()) > File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__.py", line 75, in console_to_str > return s.decode('utf_8') > UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 93: invalid start byte > > Anthony > > On Tue, Mar 6, 2018 at 4:02 AM, Walter Dörwald <wa...@li...> > wrote: > > On 6 Mar 2018, at 0:53, Anthony Tuininga wrote: > > What is cx_Oracle? > > cx_Oracle is a Python extension module that enables access to Oracle > Database for Python 3.x and 2.x and conforms to the Python database API 2.0 > specifications with a number of enhancements. > > I get an error when upgrading: > > pip install --upgrade cx_Oracle > Collecting cx_Oracle > Downloading cx_Oracle-6.2.tar.gz (237kB) > 100% |████████████████████████████████| 245kB 2.5MB/s > Installing collected packages: cx-Oracle > Found existing installation: cx-Oracle 6.1 > Uninstalling cx-Oracle-6.1: > Successfully uninstalled cx-Oracle-6.1 > Running setup.py install for cx-Oracle ... error > Complete output from command /Users/walter/pyvenvs/default/bin/python3.6 > -u -c "import setuptools, tokenize;__file__='/private/var/folders/hg/ > 5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx- > Oracle/setup.py';f=getattr(tokenize, 'open', > open)(__file__);code=f.read().replace('\r\n', > '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record > /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt > --single-version-externally-managed --compile --install-headers > /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle: > running install > running build > running build_ext > building 'cx_Oracle' extension > creating build > creating build/temp.macosx-10.13-x86_64-3.6 > creating build/temp.macosx-10.13-x86_64-3.6/src > creating build/temp.macosx-10.13-x86_64-3.6/odpi > creating build/temp.macosx-10.13-x86_64-3.6/odpi/src > clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common > -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch x86_64 > -DCXO_BUILD_VERSION=6.2 -Iodpi/include -Iodpi/src -I/usr/local/include > -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include > -I/Users/walter/pyvenvs/default/include -I/usr/local/Cellar/python/3. > 6.4_3/Frameworks/Python.framework/Versions/3.6/include/python3.6m -c > src/cxoBuffer.c -o build/temp.macosx-10.13-x86_64-3.6/src/cxoBuffer.o > src/cxoBuffer.c:17:10: fatal error: 'cxoModule.h' file not found > #include "cxoModule.h" > ^~~~~~~~~~~~~ > 1 error generated. > error: command 'clang' failed with exit status 1 > > ---------------------------------------- > Rolling back uninstall of cx-Oracle > Command "/Users/walter/pyvenvs/default/bin/python3.6 -u -c "import > setuptools, tokenize;__file__='/private/var/folders/hg/ > 5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx- > Oracle/setup.py';f=getattr(tokenize, 'open', > open)(__file__);code=f.read().replace('\r\n', > '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record > /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt > --single-version-externally-managed --compile --install-headers > /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle" failed > with error code 1 in /private/var/folders/hg/ > 5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/ > > […] > > Servus, > Walter > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot______ > _________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > |
From: Walter <wa...@li...> - 2018-03-07 16:15:08
|
On 6 Mar 2018, at 18:19, Anthony Tuininga wrote: > Hi Walter, > > This error is due to the fact that cxoModule.h is a file with a new > extension so it wasn't covered by MANIFEST.in. > I have corrected that and > also uploaded a revised source package so this should be corrected > now. > Apologies for the inconvenience! Thanks! Now the installation worked on my Mac. However on a (german) Windows 10, we get the following error: ``` C:\Users\hannes>pip install cx_Oracle Collecting cx_Oracle Downloading cx_Oracle-6.2-2.tar.gz (240kB) 100% |████████████████████████████████| 245kB 1.6MB/s Installing collected packages: cx-Oracle Running setup.py install for cx-Oracle ... error Exception: Traceback (most recent call last): File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__.py", line 73, in console_to_str return s.decode(sys.__stdout__.encoding) UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 93: invalid start byte During handling of the above exception, another exception occurred: Traceback (most recent call last): File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\basecommand.py", line 215, in main status = self.run(options, args) File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\commands\install.py", line 342, in run prefix=options.prefix_path, File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\req\req_set.py", line 784, in install **kwargs File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\req\req_install.py", line 878, in install spinner=spinner, File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\utils\__init__.py", line 676, in call_subprocess line = console_to_str(proc.stdout.readline()) File "c:\users\hannes\appdata\local\programs\python\python36\lib\site-packages\pip\compat\__init__.py", line 75, in console_to_str return s.decode('utf_8') UnicodeDecodeError: 'utf-8' codec can't decode byte 0x94 in position 93: invalid start byte ``` > Anthony > > On Tue, Mar 6, 2018 at 4:02 AM, Walter Dörwald > <wa...@li...> > wrote: > >> On 6 Mar 2018, at 0:53, Anthony Tuininga wrote: >> >> What is cx_Oracle? >> >> cx_Oracle is a Python extension module that enables access to Oracle >> Database for Python 3.x and 2.x and conforms to the Python database >> API 2.0 >> specifications with a number of enhancements. >> >> I get an error when upgrading: >> >> pip install --upgrade cx_Oracle >> Collecting cx_Oracle >> Downloading cx_Oracle-6.2.tar.gz (237kB) >> 100% >> |████████████████████████████████| >> 245kB 2.5MB/s >> Installing collected packages: cx-Oracle >> Found existing installation: cx-Oracle 6.1 >> Uninstalling cx-Oracle-6.1: >> Successfully uninstalled cx-Oracle-6.1 >> Running setup.py install for cx-Oracle ... error >> Complete output from command >> /Users/walter/pyvenvs/default/bin/python3.6 -u -c "import setuptools, >> tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, >> 'open', open)(__file__);code=f.read().replace('\r\n', >> '\n');f.close();exec(compile(code, __file__, 'exec'))" install >> --record >> /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt >> --single-version-externally-managed --compile --install-headers >> /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle: >> running install >> running build >> running build_ext >> building 'cx_Oracle' extension >> creating build >> creating build/temp.macosx-10.13-x86_64-3.6 >> creating build/temp.macosx-10.13-x86_64-3.6/src >> creating build/temp.macosx-10.13-x86_64-3.6/odpi >> creating build/temp.macosx-10.13-x86_64-3.6/odpi/src >> clang -Wno-unused-result -Wsign-compare -Wunreachable-code >> -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall >> -Wstrict-prototypes -arch x86_64 -DCXO_BUILD_VERSION=6.2 >> -Iodpi/include -Iodpi/src -I/usr/local/include >> -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include >> -I/Users/walter/pyvenvs/default/include >> -I/usr/local/Cellar/python/3.6.4_3/Frameworks/Python.framework/Versions/3.6/include/python3.6m >> -c src/cxoBuffer.c -o >> build/temp.macosx-10.13-x86_64-3.6/src/cxoBuffer.o >> src/cxoBuffer.c:17:10: fatal error: 'cxoModule.h' file not found >> #include "cxoModule.h" >> ^~~~~~~~~~~~~ >> 1 error generated. >> error: command 'clang' failed with exit status 1 >> >> ---------------------------------------- >> Rolling back uninstall of cx-Oracle >> Command "/Users/walter/pyvenvs/default/bin/python3.6 -u -c "import >> setuptools, >> tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, >> 'open', open)(__file__);code=f.read().replace('\r\n', >> '\n');f.close();exec(compile(code, __file__, 'exec'))" install >> --record >> /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt >> --single-version-externally-managed --compile --install-headers >> /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle" >> failed with error code 1 in >> /private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/ >> >> […] >> >> Servus, >> Walter >> >> ------------------------------------------------------------ >> ------------------ >> Check out the vibrant tech community on one of the world's most >> engaging tech sites, Slashdot.org! http://sdm.link/slashdot >> _______________________________________________ >> cx-oracle-users mailing list >> cx-...@li... >> https://lists.sourceforge.net/lists/listinfo/cx-oracle-users >> >> > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! > http://sdm.link/slashdot_______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users |
From: Anthony T. <ant...@gm...> - 2018-03-06 17:19:15
|
Hi Walter, This error is due to the fact that cxoModule.h is a file with a new extension so it wasn't covered by MANIFEST.in. I have corrected that and also uploaded a revised source package so this should be corrected now. Apologies for the inconvenience! Anthony On Tue, Mar 6, 2018 at 4:02 AM, Walter Dörwald <wa...@li...> wrote: > On 6 Mar 2018, at 0:53, Anthony Tuininga wrote: > > What is cx_Oracle? > > cx_Oracle is a Python extension module that enables access to Oracle > Database for Python 3.x and 2.x and conforms to the Python database API 2.0 > specifications with a number of enhancements. > > I get an error when upgrading: > > pip install --upgrade cx_Oracle > Collecting cx_Oracle > Downloading cx_Oracle-6.2.tar.gz (237kB) > 100% |████████████████████████████████| 245kB 2.5MB/s > Installing collected packages: cx-Oracle > Found existing installation: cx-Oracle 6.1 > Uninstalling cx-Oracle-6.1: > Successfully uninstalled cx-Oracle-6.1 > Running setup.py install for cx-Oracle ... error > Complete output from command /Users/walter/pyvenvs/default/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle: > running install > running build > running build_ext > building 'cx_Oracle' extension > creating build > creating build/temp.macosx-10.13-x86_64-3.6 > creating build/temp.macosx-10.13-x86_64-3.6/src > creating build/temp.macosx-10.13-x86_64-3.6/odpi > creating build/temp.macosx-10.13-x86_64-3.6/odpi/src > clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch x86_64 -DCXO_BUILD_VERSION=6.2 -Iodpi/include -Iodpi/src -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/Users/walter/pyvenvs/default/include -I/usr/local/Cellar/python/3.6.4_3/Frameworks/Python.framework/Versions/3.6/include/python3.6m -c src/cxoBuffer.c -o build/temp.macosx-10.13-x86_64-3.6/src/cxoBuffer.o > src/cxoBuffer.c:17:10: fatal error: 'cxoModule.h' file not found > #include "cxoModule.h" > ^~~~~~~~~~~~~ > 1 error generated. > error: command 'clang' failed with exit status 1 > > ---------------------------------------- > Rolling back uninstall of cx-Oracle > Command "/Users/walter/pyvenvs/default/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle" failed with error code 1 in /private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/ > > […] > > Servus, > Walter > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > |
From: Walter <wa...@li...> - 2018-03-06 11:02:20
|
On 6 Mar 2018, at 0:53, Anthony Tuininga wrote: > What is cx_Oracle? > > cx_Oracle is a Python extension module that enables access to Oracle > Database for Python 3.x and 2.x and conforms to the Python database > API 2.0 > specifications with a number of enhancements. I get an error when upgrading: ``` pip install --upgrade cx_Oracle Collecting cx_Oracle Downloading cx_Oracle-6.2.tar.gz (237kB) 100% |████████████████████████████████| 245kB 2.5MB/s Installing collected packages: cx-Oracle Found existing installation: cx-Oracle 6.1 Uninstalling cx-Oracle-6.1: Successfully uninstalled cx-Oracle-6.1 Running setup.py install for cx-Oracle ... error Complete output from command /Users/walter/pyvenvs/default/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle: running install running build running build_ext building 'cx_Oracle' extension creating build creating build/temp.macosx-10.13-x86_64-3.6 creating build/temp.macosx-10.13-x86_64-3.6/src creating build/temp.macosx-10.13-x86_64-3.6/odpi creating build/temp.macosx-10.13-x86_64-3.6/odpi/src clang -Wno-unused-result -Wsign-compare -Wunreachable-code -fno-common -dynamic -DNDEBUG -g -fwrapv -O3 -Wall -Wstrict-prototypes -arch x86_64 -DCXO_BUILD_VERSION=6.2 -Iodpi/include -Iodpi/src -I/usr/local/include -I/usr/local/opt/openssl/include -I/usr/local/opt/sqlite/include -I/Users/walter/pyvenvs/default/include -I/usr/local/Cellar/python/3.6.4_3/Frameworks/Python.framework/Versions/3.6/include/python3.6m -c src/cxoBuffer.c -o build/temp.macosx-10.13-x86_64-3.6/src/cxoBuffer.o src/cxoBuffer.c:17:10: fatal error: 'cxoModule.h' file not found #include "cxoModule.h" ^~~~~~~~~~~~~ 1 error generated. error: command 'clang' failed with exit status 1 ---------------------------------------- Rolling back uninstall of cx-Oracle Command "/Users/walter/pyvenvs/default/bin/python3.6 -u -c "import setuptools, tokenize;__file__='/private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/setup.py';f=getattr(tokenize, 'open', open)(__file__);code=f.read().replace('\r\n', '\n');f.close();exec(compile(code, __file__, 'exec'))" install --record /var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-a0f8egs7-record/install-record.txt --single-version-externally-managed --compile --install-headers /Users/walter/pyvenvs/default/include/site/python3.6/cx-Oracle" failed with error code 1 in /private/var/folders/hg/5rsj4705065b3cyxdftzd48w0000gn/T/pip-build-ovkqpskf/cx-Oracle/ ``` > […] Servus, Walter |
From: Anthony T. <ant...@gm...> - 2018-03-05 23:53:56
|
What is cx_Oracle? cx_Oracle is a Python extension module that enables access to Oracle Database for Python 3.x and 2.x and conforms to the Python database API 2.0 specifications with a number of enhancements. Where do I get it? https://oracle.github.io/python-cx_Oracle The easiest method to install/upgrade cx_Oracle is via pip as in python -m pip install cx_Oracle --upgrade What's new? This release eliminates the error "DPI-1054: connection cannot be closed when open statements or LOBs exist". It also adds support for creating temporary LOBs and binding LOBs directly to a cursor. You can now also use a connection as a context manager to close the connection at the end of the block by using the new cx_Oracle.__future__ object ( http://cx-oracle.readthedocs.io/en/latest/module.html#cx_Oracle.__future__). This will become the default and only behaviour of using a connection as a context manager unless I hear otherwise! The code was reorganised and simplified in order to streamline further maintenance and a number of bugs were fixed. The full release notes can be read here: http://cx-oracle.readthedocs.io/en/latest/releasenotes.html#version-6-2-march-2018 Please provide any feedback via GitHub issues ( https://github.com/oracle/python-cx_Oracle/issues). |
From: Christopher J. <chr...@or...> - 2018-03-05 04:11:42
|
Our first cx_Oracle 'Office Hours' (for 30 minutes!) will be on March 13, 2018 20:00 - 20:30 UTC Hop on the webcast and ask us cx_Oracle questions. The ice-breaker theme will be connection management so we'll start with an informal chat about that, but feel free to BYO topics and questions. The link you need is https://devgym.oracle.com/pls/apex/dg/office_hours/3701 -- http://twitter.com/ghrd |
From: Anthony T. <ant...@gm...> - 2017-12-12 20:22:49
|
What is cx_Oracle? cx_Oracle is a Python extension module that enables access to Oracle Database for Python 3.x and 2.x and conforms to the Python database API 2.0 specifications with a number of enhancements. Where do I get it? https://oracle.github.io/python-cx_Oracle The easiest method to install/upgrade cx_Oracle is via pip as in python -m pip install cx_Oracle --upgrade What's new? This release has a number of small enhancements intended to build upon the release of 6.0 made a few months ago. Topping the list is support for accessing sharded databases, a new feature in Oracle Database 12.2. Support for creating connections using the SYSBACKUP, SYSDG, SYDKM and SYSRAC roles was also added, as was support for identifying the id of the transaction which spawned a subscription message. For those on Windows, improved error messages were created for when the wrong architecture Oracle Client is in the PATH environment variable. Improvements were also made to the debugging infrastructure and a number of bugs were squashed. The test suite has also been expanded. The full release notes can be read here: http://cx-oracle.readthedocs.io/en/latest/releasenotes.html#version-6-1-december-2017 Please provide any feedback via GitHub issues (https://github.com/oracle/pyt hon-cx_Oracle/issues). |
From: Anthony T. <ant...@gm...> - 2017-11-06 19:40:33
|
What is cx_Oracle? cx_Oracle is a Python extension module that enables access to Oracle Database for Python 3.x and 2.x and conforms to the Python database API 2.0 specifications with a number of enhancements. Where do I get it? https://oracle.github.io/python-cx_Oracle The easiest method to install cx_Oracle is via pip as in python -m pip install cx_Oracle --upgrade What's new? This release addresses issues found since the previous release. The full release notes can be read here: http://cx-oracle.readthedocs.io/en/latest/releasenotes.html#version-6-0-3-november-2017 Please provide any feedback via GitHub issues (https://github.com/oracle/pyt hon-cx_Oracle/issues). |
From: Andrew Z <fo...@gm...> - 2017-10-26 14:05:13
|
Norman, True. That is exactly how i use it. If you think about it, the "executer" is for those routines that can not be execited in the same thread ( blocking ). In the sense, running part of a program using asyncio single thread model and then spawning tons of threads for DB, is inconsistent from architectural perspective. We may ask - why bother with asyncio, if i have to use threads for a db. Or even, use other "asyncio compatible " driver + db - postgres, mysql, mongo those drivers are "asyncio ready" - https://aiopg.readthedocs.io/en/stable/ http://motor.readthedocs.io/en/stable/tutorial-asyncio.html https://github.com/aio-libs/aiomysql I also found these articles/discussions useful presenting different view points: http://techspot.zzzeek.org/2015/02/15/asynchronous-python-and-databases/ https://groups.google.com/forum/m/#!topic/zodb/ON3Q3E8HWtM https://news.ycombinator.com/item?id=9053286 On Oct 26, 2017 06:39, "Norman Denayer" <den...@gm...> wrote: Hello Walter, (We can use cx_Oracle with these frameworks now, but during any calls to the database the code can do nothing else except wait for the answer from the database). Actually, cx_Oracle use the macros Py_BEGIN_ALLOW_THREADS and Py_END_ALLOW_THREADS to let other threads run during driver calls and database work. So even without an async version of cx_Oracle, you may execute your calls in a “*concurrent.futures.ThreadPoolExecutor*” Of course it’s not perfect but it allows async code still call non-async code in a non-blocking way. See: https://docs.python.org/3/library/asyncio-eventloop.html#executor https://docs.python.org/3/library/concurrent.futures. html#concurrent.futures.ThreadPoolExecutor Norman On 26 Oct 2017, at 10:47, Walter Dörwald <wa...@li...> wrote: On 24 Oct 2017, at 19:57, Anthony Tuininga wrote: Hi Andrew, Apologies for the delay in response. I had a busy month. :-) There are no current plans to make cx_Oracle "compatible" with asyncio, but that could change -- especially if you provided some indication of what you meant by that request! It might be useful to create an issue on the cx_Oracle issues page providing some more details. That will give others a chance to comment a well, since not everyone is on the mailing list. I guess this would mean that for each method that talks to the database there should be an async version, i.e. instead of def print_foo(): cursor.execute("select * from foo") for row in cursor: print(row) we could do: async def print_foo(): await cursor.execute("select * from foo") async for row in cursor: print(row) Then we could use cx_Oracle with other async frameworks (aiohttp, sanic and probably Tornado and Twisted and a bunch others) and take advantage of cx_Oracle's new async features. (We can use cx_Oracle with these frameworks now, but during any calls to the database the code can do nothing else except wait for the answer from the database). Details for async/await are in PEP 492 at https://www.python.org/dev/ peps/pep-0492/ Anthony On Mon, Sep 25, 2017 at 10:22 PM, Andrew Zyman <fo...@gm...> wrote: Hello, wonder if there are any plans to make the module "compatible" with asyncio ? Thank you AZ Servus, Walter ------------------------------------------------------------ ------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ cx-oracle-users mailing list cx-...@li... https://lists.sourceforge.net/lists/listinfo/cx-oracle-users ------------------------------------------------------------ ------------------ Check out the vibrant tech community on one of the world's most engaging tech sites, Slashdot.org! http://sdm.link/slashdot _______________________________________________ cx-oracle-users mailing list cx-...@li... https://lists.sourceforge.net/lists/listinfo/cx-oracle-users |
From: Norman D. <den...@gm...> - 2017-10-26 10:39:33
|
Hello Walter, > (We can use cx_Oracle with these frameworks now, but during any calls to the database the code can do nothing else except wait for the answer from the database). Actually, cx_Oracle use the macros Py_BEGIN_ALLOW_THREADS and Py_END_ALLOW_THREADS to let other threads run during driver calls and database work. So even without an async version of cx_Oracle, you may execute your calls in a “concurrent.futures.ThreadPoolExecutor” Of course it’s not perfect but it allows async code still call non-async code in a non-blocking way. See: https://docs.python.org/3/library/asyncio-eventloop.html#executor <https://docs.python.org/3/library/asyncio-eventloop.html#executor> https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.ThreadPoolExecutor <https://docs.python.org/3/library/concurrent.futures.html#concurrent.futures.ThreadPoolExecutor> Norman > On 26 Oct 2017, at 10:47, Walter Dörwald <wa...@li...> wrote: > > On 24 Oct 2017, at 19:57, Anthony Tuininga wrote: > >> Hi Andrew, >> >> Apologies for the delay in response. I had a busy month. :-) >> >> There are no current plans to make cx_Oracle "compatible" with asyncio, but >> that could change -- especially if you provided some indication of what you >> meant by that request! It might be useful to create an issue on the >> cx_Oracle issues page providing some more details. That will give others a >> chance to comment a well, since not everyone is on the mailing list. > > I guess this would mean that for each method that talks to the database there should be an async version, i.e. instead of > > def print_foo(): > cursor.execute("select * from foo") > for row in cursor: > print(row) > > we could do: > > async def print_foo(): > await cursor.execute("select * from foo") > async for row in cursor: > print(row) > > Then we could use cx_Oracle with other async frameworks (aiohttp, sanic and probably Tornado and Twisted and a bunch others) and take advantage of cx_Oracle's new async features. > > (We can use cx_Oracle with these frameworks now, but during any calls to the database the code can do nothing else except wait for the answer from the database). > > Details for async/await are in PEP 492 at https://www.python.org/dev/peps/pep-0492/ > >> Anthony >> >> On Mon, Sep 25, 2017 at 10:22 PM, Andrew Zyman <fo...@gm...> wrote: >> >>> Hello, >>> wonder if there are any plans to make the module "compatible" with >>> asyncio ? >>> Thank you >>> AZ > > Servus, > Walter > > ------------------------------------------------------------------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users |
From: Walter <wa...@li...> - 2017-10-26 09:17:29
|
On 24 Oct 2017, at 19:57, Anthony Tuininga wrote: > Hi Andrew, > > Apologies for the delay in response. I had a busy month. :-) > > There are no current plans to make cx_Oracle "compatible" with > asyncio, but > that could change -- especially if you provided some indication of > what you > meant by that request! It might be useful to create an issue on the > cx_Oracle issues page providing some more details. That will give > others a > chance to comment a well, since not everyone is on the mailing list. I guess this would mean that for each method that talks to the database there should be an async version, i.e. instead of def print_foo(): cursor.execute("select * from foo") for row in cursor: print(row) we could do: async def print_foo(): await cursor.execute("select * from foo") async for row in cursor: print(row) Then we could use cx_Oracle with other async frameworks (aiohttp, sanic and probably Tornado and Twisted and a bunch others) and take advantage of cx_Oracle's new async features. (We can use cx_Oracle with these frameworks now, but during any calls to the database the code can do nothing else except wait for the answer from the database). Details for async/await are in PEP 492 at https://www.python.org/dev/peps/pep-0492/ > Anthony > > On Mon, Sep 25, 2017 at 10:22 PM, Andrew Zyman <fo...@gm...> > wrote: > >> Hello, >> wonder if there are any plans to make the module "compatible" with >> asyncio ? >> Thank you >> AZ Servus, Walter |
From: Anthony T. <ant...@gm...> - 2017-10-24 17:57:45
|
Hi Andrew, Apologies for the delay in response. I had a busy month. :-) There are no current plans to make cx_Oracle "compatible" with asyncio, but that could change -- especially if you provided some indication of what you meant by that request! It might be useful to create an issue on the cx_Oracle issues page providing some more details. That will give others a chance to comment a well, since not everyone is on the mailing list. Anthony On Mon, Sep 25, 2017 at 10:22 PM, Andrew Zyman <fo...@gm...> wrote: > Hello, > wonder if there are any plans to make the module "compatible" with > asyncio ? > Thank you > AZ > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > |
From: Laura L. <lau...@gm...> - 2017-10-16 13:43:03
|
Thank you!! 2017-10-14 3:35 GMT+02:00 Anthony Tuininga <ant...@gm...>: > For those who weren't able to make Oracle Open World 2017, the > presentations and lab content are now available: > > Hands On Lab - https://github.com/oracle/python-cx_Oracle/tree/master/ > samples/tutorial > > Presentations: https://events.rainfocus.com/catalog/oracle/ > oow17/catalogoow17 > - CON7344: Building Python Messaging Apps with Oracle Database > - CON6714: Python and Oracle Database: Tips, Tricks, and the Best New > Features > > Anthony > > ------------------------------------------------------------ > ------------------ > Check out the vibrant tech community on one of the world's most > engaging tech sites, Slashdot.org! http://sdm.link/slashdot > _______________________________________________ > cx-oracle-users mailing list > cx-...@li... > https://lists.sourceforge.net/lists/listinfo/cx-oracle-users > > -- ______________________________________________________________________ Laura Lacarra Arcos about.me/lauralacarra @lauralacarra <https://twitter.com/#!/LauraLacarra> |
From: Anthony T. <ant...@gm...> - 2017-10-14 01:35:48
|
For those who weren't able to make Oracle Open World 2017, the presentations and lab content are now available: Hands On Lab - https://github.com/oracle/python-cx_Oracle/tree/master/samples/tutorial Presentations: https://events.rainfocus.com/catalog/oracle/oow17/catalogoow17 - CON7344: Building Python Messaging Apps with Oracle Database - CON6714: Python and Oracle Database: Tips, Tricks, and the Best New Features Anthony |