Thanks for trying it out! Sounds like you have a very old version of ddlog. If you install from source, please make sure that you run `stack install` and that there is no other version off ddlog in your path other than the one created by `stack install`.
Leonid On Fri, Jul 12, 2019, 9:05 AM Mark Michelson <mmich...@redhat.com> wrote: > On 7/12/19 3:29 AM, Leonid Ryzhyk wrote: > > Dear OVN developers, > > > > This is a brief update on the state of the DDlog port of ovn-northd. > > > > We completed the initial implementation of ovn-northd in DDlog few months > > ago. Justin kindly > > helped to integrate it with OVN, so that it can be used as a drop-in > > replacement for the C > > version (and passes all the tests in the OVN test suite). The DDlog > > implementation does > > not have any of the new features/improvements added in April 2019 or > later. > > > > ## Repository > > > > The code is in the `ddlog-dev` branch of the `ovn-org/ovn` repository: > > https://github.com/ovn-org/ovn/tree/ddlog-dev > > Hi Leonid, > > I ran into an issue when attempting to build ovn-northd. I successfully > installed DDLog, but then I encountered this issue when building OVN: > > ddlog -i ovn/northd/ovn_northd.dl -L > /home/putnopvut/differential-datalog/lib > ddlog: Failed to parse input file: "ovn/northd/ovn_northd.dl" (line 94, > column 5): > unexpected "&" > expecting "not", variable name, relation name, "var", expression or "." > > The line in question looks like this: > > &SwitchPort(.lsp = lsp, .sw = &sw), > > Any idea what's gone wrong here? > > Thanks, > > Mark Michelson > > > > > > > ## Documentation > > > > Building and using ovn-northd-ddlog: > > https://github.com/ovn-org/ovn/blob/ddlog-dev/ovn/northd/docs/design.md > > > > Debugging ovn-northd-ddlog: > > > https://github.com/ovn-org/ovn/blob/ddlog-dev/ovn/northd/docs/debugging.md > > > > ## Preliminary performance results > > > > Han Zhou kindly tested ovn-northd-ddlog with his OVN scale test and even > > found a nasty > > performance bug in the process (thanks, Han!). He reports that DDlog > > speeds up the test > > by almost a factor of 10: > > > > - ddlog version: 7:39min > > - C version: 67:47min > > > > This is great, and in fact profiling shows that there is still plenty of > > space for > > improvement. He also reports a 10+ times increase in memory footprint: > > > > - ddlog version: 1944696KB > > - C version: 147984KB > > > > Again, we are working on a number of optimizations, which should reduce > > this overhead; although it will never be as low as C, since DDlog > > fundamentally > > needs to cache more state to enable fast incremental computation. > > > > Han also used DDlog's record&replay feature to capture all northd > > transactions > > performed by the scale test in a format that can be replayed against the > > standalone DDlog executable without having to reproduce Han's OpenStack > > setup. > > The replay file is here: http://ryzhyk.net/replay.tgz > > > > Instructions for replaying this script: > > > https://github.com/ovn-org/ovn/blob/ddlog-dev/ovn/northd/docs/debugging.md#record-and-replay-ddlog-execution > > The script will run for a few > > minutes and finally print some profiling information, including the > > breakdown of > > DDlog's CPU and memory usage. > > > > ## Next steps > > > > We seek help from the OVN community in maintaining ovn-northd-ddlog. The > > first > > step is to start porting new OVN features introduced in the last few > months > > to > > DDlog. > > > > Leonid > > Hi Leonid, > > I attempted > > > _______________________________________________ > > dev mailing list > > d...@openvswitch.org > > https://mail.openvswitch.org/mailman/listinfo/ovs-dev > > > > _______________________________________________ dev mailing list d...@openvswitch.org https://mail.openvswitch.org/mailman/listinfo/ovs-dev