[Zope-DB] ORA-24370: illegal piecewise operation attempted

Matthew T. Kromer matt at zope.com
Wed Oct 22 10:34:48 EDT 2003


The OracleStorage as written won't work properly with Oracle 9i.  The 
stored procedures try to return some LONG fields which will end up 
getting truncated to 4000 bytes.

However, the specific message you're seeing is a new one which I think 
is related.  This one looks like the stored procedure is trying to 
return two LONG columns (which is not supported right now).  Without 
tracing it I can't say for sure what the illegal piecewise operation it 
was trying to do, but it is LONG related, for sure.


Michael Eichner wrote:

> Hi,
>
> I'm trying to change from FileStorage to OracleStorage.
>
> I'm using Zope 2.6.2 with Python 2.2.3 and DCOracle2-1.1 (also happens
> with Oracle2-1.2). RedHat 8 and Oracle9iR2 installed.
>
> I can create the structure with DCOracleStorage/FullDBA.py without any
> problem.
> A migration of the data is also possible using my script:
> -----
> import ZODB
> from ZODB.FileStorage import FileStorage
> import DCOracle2
> import DCOracleStorage
>
> oldDataFS = FileStorage("/usr/local/Zope-2.6.2/var/Data.fs")
> DCOracle2.connect('system/ZODB at ZODB')
> newDataFS=DCOracleStorage.Full(lambda :
> DCOracle2.connect('user/pass at SID'),prefix = "zodb_",)
>
> newDataFS.copyTransactionsFrom(oldDataFS, verbose=1)
> -----
>
>
> But when I start Zope I get the following error:
> [root at tamara Zope-2.6.2]# python z2.py -D
> ------
> 2003-10-20T23:23:07 PANIC(300) z2 Startup exception
> Traceback (innermost last):
>  File z2.py, line 585, in ?
>    (Object: ZLogger)
>  File
> /usr/local/software/source/Zope-2.6.2-src/lib/python/Zope/__init__.py,
> line 46, in startup
>    (Object: startup)
>  File
> /usr/local/software/source/Zope-2.6.2-src/lib/python/Zope/App/startup.py,
> line 61, in startup
>  File /usr/local/software/source/Zope-2.6.2-src/lib/python/ZODB/DB.py,
> line 84, in __init__
>  File DCOracleStorage/Full.py, line 250, in load
>    (Object: Oracle Storage)
>  File DCOracleStorage/Full.py, line 201, in _call
>    (Object: Oracle Storage)
>  File DCOracle2/DCOracle2.py, line 1344, in __call__
>    (Object: ZODB_METHODS.ZODB_LOAD)
>  File DCOracle2/DCOracle2.py, line 903, in execute
> DatabaseError: (24370, 'ORA-24370: illegal piecewise operation 
> attempted')
>
> Thanks for your help and advice,
> Michael
>
>
>
>
> _______________________________________________
> Zope-DB mailing list
> Zope-DB at zope.org
> http://mail.zope.org/mailman/listinfo/zope-db



-- 
Matt Kromer
Zope Corporation  http://www.zope.com/ 





More information about the Zope-DB mailing list