Re: Suds 4.1 Beta Assertion Failure
1stpo...@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). -- https://mail.python.org/mailman/listinfo/python-list
Re: Suds 4.1 Beta Assertion Failure
It turns out I was passing the parameters incorrectly to the generateReportSQL method. This is what I had: result=reportservice.generateReportSQL(rptRef, paramRpt, sessionid) This is what works: result=XMLservice.generateReportSQL({'reportPath':rptRef},sessionid) 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 -- https://mail.python.org/mailman/listinfo/python-list
Suds 4.1 Beta Assertion Failure
Hello group, I have been using Python suds to try to consume a web service. I am able to use tools like SOAPUI and it works but when I it in python I get Assertion Failure. Here is my code if __name__== '__main__': from suds.client import Client import logging logging.basicConfig(filename=suds.log,level=logging.INFO) logging.getLogger('suds.wsdl').setLevel(logging.DEBUG) obieeserver='http://hostname:port/analytics-ws/saw.dll/wsdl/v7' rptRef='myReport' paramRpt='' client = Client(obieeserver) sessionid = client.service['SAWSessionService'].logon('uid','pwd') print 'sessionid=',sessionid reportservice=client.service['ReportEditingService'] result=reportservice.generateReportSQL(rptRef, paramRpt, sessionid) print 'result=',type(result) Here is my output: sessionid= fq3c0f0ec7hrql07fspk7fdu4esih16pp4eql9a Traceback (most recent call last): File obieetest.py, line 90, in module result=reportservice.generateReportSQL(rptRef, paramRpt, 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 651, in send File build\bdist.win32\egg\suds\client.py, line 688, in succeeded File build\bdist.win32\egg\suds\bindings\binding.py, line 151, in get_reply File build\bdist.win32\egg\suds\bindings\binding.py, line 182, in detect_fault suds.WebFault: Server raised fault: 'Assertion failure: criteria at line 296 of /net/adcnas420/export/ifarm_base/ifarm_views/aime_bifndn_430300/bifndn/analytics_web/main/project/webformatengine/formatengine.cpp' -- https://mail.python.org/mailman/listinfo/python-list
Re: Suds 4.1 Beta Assertion Failure
1stpo...@gmail.com writes: Hello group, I have been using Python suds to try to consume a web service. I am able to use tools like SOAPUI and it works but when I it in python I get Assertion Failure. ... suds.WebFault: Server raised fault: 'Assertion failure: criteria at line 296 of /net/adcnas420/export/ifarm_base/ifarm_views/aime_bifndn_430300/bifndn/analytics_web/main/project/webformatengine/formatengine.cpp' This is a message from the webserver. The Assertion failure happens there (in the server) and not on the client side. Usually, an Assertion failure is a programming error (of the component which checks the assertion). However, in some cases, other components (such as the client, in your case) might be directly responsible or have at least triggered the problem. I would approach as follows: Tell suds to log the outgoing messages; lock at those messages whether they are correct. If they are, contact the web service administrator and ask him for help. -- https://mail.python.org/mailman/listinfo/python-list