I am attempting to crawl a hierarchy and am getting an error whenever I attempt to call "getChildren" on any XMLAMember. I've tried pulling members from a Hierarchy and a Level. The results are the same.
I've provided what I believe to be all relevant environment/context, but I'm happy to provide anything I'm able on request. From what I can tell, Mondrian is not liking the XML/A request coming from the library. Not sure if it's something that you're aware of, or if it's something that can be worked around.
I appreciate any help you're willing/able to provide.
Python Version: 2.7.3
Package Version (from "pip freeze"): xmla==0.7.2
Mondrian Version: 3.9
Example Code (sensitive information has been replaced. example output below)
import olap.xmla.xmla as xmla
location = "http://mondrian.example.com:8080/pentaho/Xmla"
username = "username"
password = "password"
xmla_provider = xmla.XMLAProvider()
xmla_connection = xmla_provider.connect(location=location, username=username, password=password)
olap_source = xmla_connection.getOLAPSource()
h = olap_source.getCatalog('MyCatalog').getCube('Click').getDimension('[Vendor]').getHierarchy('[Vendor]')
for member in h.getMembers():
print "Member: %s" % member.getUniqueName()
if member.hasChildren():
#ERROR OCCURS WHEN EXECUTING NEXT LINE
for child in member.getChildren():
print "Child: %s" % child.getUniqueName()
OUTPUT:
No handlers could be found for logger "olap.xmla.requests_kerberosauth"
Member: [Vendor].[All Vendors]
Traceback (most recent call last):
File "bug.py", line 19, in <module>
for child in member.getChildren():
File "/usr/local/lib/python2.7/dist-packages/olap/xmla/xmla.py", line 276, in getChildren
more_restrictions={"TREE_OP":TREE_OP.CHILDREN})
File "/usr/local/lib/python2.7/dist-packages/olap/xmla/xmla.py", line 101, in getSchemaElements
props = func(r, properties)
File "/usr/local/lib/python2.7/dist-packages/olap/xmla/connection.py", line 67, in <lambda>
*args, **kw)
File "/usr/local/lib/python2.7/dist-packages/olap/xmla/connection.py", line 109, in Discover
raise XMLAException(fault.message, dictify(fault.fault))
olap.xmla.interfaces.XMLAException: Server raised fault: 'XMLA Discover unparse results error'
MONDRIAN Exception (from bi-server/tomcat/logs/pentaho.log)
2015-05-29 10:51:29,814 ERROR [mondrian.xmla.XmlaServlet] Errors when handling XML/A message
mondrian.xmla.XmlaException: Mondrian Error:XMLA Discover unparse results error
at mondrian.xmla.XmlaHandler.discover(XmlaHandler.java:2873)
at mondrian.xmla.XmlaHandler.process(XmlaHandler.java:671)
at mondrian.xmla.impl.DefaultXmlaServlet.handleSoapBody(DefaultXmlaServlet.java:507)
at mondrian.xmla.XmlaServlet.doPost(XmlaServlet.java:318)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:643)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:723)
...
Caused by: java.lang.UnsupportedOperationException
at mondrian.xmla.RowsetDefinition$SharedDimensionHolderCube.lookupMember(RowsetDefinition.java:6552)
at mondrian.xmla.RowsetDefinition$MdschemaMembersRowset.outputUniqueMemberName(RowsetDefinition.java:5711)
at mondrian.xmla.RowsetDefinition$MdschemaMembersRowset.populateCatalog(RowsetDefinition.java:5476)
at mondrian.xmla.RowsetDefinition$MdschemaMembersRowset.populateImpl(RowsetDefinition.java:5459)
at mondrian.xmla.Rowset.populate(Rowset.java:222)
at mondrian.xmla.Rowset.unparse(Rowset.java:194)
at mondrian.xmla.XmlaHandler.discover(XmlaHandler.java:2867)
...
I am attempting to crawl a hierarchy and am getting an error whenever I attempt to call "getChildren" on any XMLAMember. I've tried pulling members from a Hierarchy and a Level. The results are the same.
I've provided what I believe to be all relevant environment/context, but I'm happy to provide anything I'm able on request. From what I can tell, Mondrian is not liking the XML/A request coming from the library. Not sure if it's something that you're aware of, or if it's something that can be worked around.
I appreciate any help you're willing/able to provide.
Python Version: 2.7.3
Package Version (from "pip freeze"): xmla==0.7.2
Mondrian Version: 3.9
Example Code (sensitive information has been replaced. example output below)
OUTPUT:
MONDRIAN Exception (from bi-server/tomcat/logs/pentaho.log)
...