Added the qualifier here: if( val.isFrame() && !val.isRawData() ) {
to only add Frames to the exec env that are parsed. Before it was adding all frames.
Exec can't use unparsed frames, but I wonder if it was causing badness also, if the frame is already locked by 'null'.
Because ALL locks by 'null' are removed when you leave Exec. (job name is not unique between import/parse and exec?)
Before exec was adding all existing frames with a read-shared lock.
Musing: Should be illegal to add any keys already locked by "null' to exec? (is it only unparsed keys?)
VA probably has similar issue, but VA is being phased out.

My test seems to run now. It was doing things like
import, exec, storeview, import(same), exec, storeview
and failing on the 2nd storeview, on an unparsed key.

The Exec seemed to affect things, and there's no reason for Exec to need the unparsed key.
Merge branch 'master' of github.com:0xdata/h2o