Suds 4.1 Beta Assertion Failure
dieter
dieter at handshake.de
Fri Jun 13 02:02:09 EDT 2014
1stpoint at gmail.com writes:
> ...
> I have another issue. When I make the call to return data apparently the result set is too big for suds and I get a MemoryError.
>
> Here is my code snippet:
> print 'executing SQL Query:',len(logicalSQL)
> executionOptions={'async':False,'maxRowsPerPage':50,'refresh':True,'presentationInfo':False,'type':'Q1'}
> XMLservice=obiclient.service['XmlViewService']
> result=XMLservice.executeSQLQuery(logicalSQL,'SAWRowsetData',executionOptions,sessionid)
>
> When I run it I get:
> executing SQL Query: 5968
> Traceback (most recent call last):
> File "C:\temp\obiee\obieetest.py", line 105, in <module>
> result=XMLservice.executeSQLQuery(logicalSQL,'SAWRowsetData',executionOptions,sessionid)
> File "build\bdist.win32\egg\suds\client.py", line 542, in __call__
> File "build\bdist.win32\egg\suds\client.py", line 602, in invoke
> File "build\bdist.win32\egg\suds\client.py", line 643, in send
> File "build\bdist.win32\egg\suds\transport\https.py", line 64, in send
> File "build\bdist.win32\egg\suds\transport\http.py", line 79, in send
> File "C:\Python27\lib\socket.py", line 358, in read
> buf.write(data)
> MemoryError: out of memory
There is not much "suds" can do with regard to this. In principle,
it could write to a temporary file - but its purpose is to present
the webservice result as a collection of Python objects - and
they, too, require memory in the same order.
Thus, you have the following options:
* learn how to limit the amount of data, the webservice provides
* give your system (its processes) more memory
* do not use "suds" but process the incoming data incrementally
(avoiding the build of the intermediate collection of Python objects).
More information about the Python-list
mailing list