Simplest scenario is as follows:
0) run server, connect (locally, but that should not be important) client, authorize
In client, write queries as follows:
begin
create view simpleDef {virtual objects simple() {return 1} }
simple
simple <- server segfault here
This bug is a bit hard to trace - again problem probably somewhere in the QueryExecutor
I think that this bug is fixed now. Track can be closed.
Problem was with passing fake logical ids for generated virtual objects as a response to client. Executor was passing reference to his own copy (instead of making deep copy) of this object to server. Server was deleting this object. Then next time, when executor was accesing those objects, we got a segfault.