> 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)
> 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>
> 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
> 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).