When I try to generate a JSON file with the following datalog query i get an error.
"sg(X,Y) :- tiny_graph(1,X), tiny_graph(1,Y);
sg(X,Y) :- tiny_graph(A,X), sg(A,B), tiny_graph(B,Y);"
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
Thanks for reporting this! Since this concerns the RACO query compiler, and not the myria-web UI, I closed this issue and copied it to a new RACO issue: https://github.com/uwescience/raco/issues/571.
When I try to generate a JSON file with the following datalog query i get an error. "sg(X,Y) :- tiny_graph(1,X), tiny_graph(1,Y); sg(X,Y) :- tiny_graph(A,X), sg(A,B), tiny_graph(B,Y);" 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