Compilation and rule-based optimization framework for relational algebra. Raco is the language, optimization, and query translation layer for the Myria project.
The error seems to be due to recursion in second rule: sg(X,Y) :- tiny_graph(A,X), sg(A,B), tiny_graph(B,Y);
Traceback (most recent call last):
File "/opt/google_appengine/lib/webapp2-2.5.2/webapp2.py", line 570, in dispatch
return method(*args, **kwargs)
File "/usr/local/myria-web/appengine/myria_web_main.py", line 467, in get
query, language, self.app.connection, push_sql=push_sql))
File "/usr/local/myria-web/appengine/myria_web_main.py", line 118, in get_logical_plan
return get_plan(query, language, 'logical', connection, push_sql=push_sql)
File "/usr/local/myria-web/appengine/myria_web_main.py", line 86, in get_plan
dlog.fromDatalog(query)
File "/usr/local/myria-web/appengine/raco/init.py", line 19, in fromDatalog
self.logicalplan = self.parsed.toRA()
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 79, in toRA
for r in rules])])
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 89, in compileIDB
plans = [r.toRA(self) for r in rules]
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 374, in toRA
plan = joinsequence.makePlan(conditions, program)
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 125, in makePlan
for t in self.terms]
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 800, in makeLeaf
plan = program.compileIDB(self.name)
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 89, in compileIDB
plans = [r.toRA(self) for r in rules]
File "/usr/local/myria-web/appengine/raco/datalog/model.py", line 295, in toRA
self.fixpoint = algebra.Fixpoint()
TypeError: Can't instantiate abstract class Fixpoint with abstract methods partitioning
Opened by @akashsa (https://github.com/uwescience/myria-web/issues/318)
When I try to generate a JSON file with the following datalog query i get an error.
The error seems to be due to recursion in second rule:
sg(X,Y) :- tiny_graph(A,X), sg(A,B), tiny_graph(B,Y);