anchor.diff:  				"actor type1(foreach X.txt in ACTORS) create;",
   				"insert into tab2 values ({{uniqid.s}},'{{X.txt}}');"]),
   	% ?debugFmt("Res ~p~n",[Res]),
  -	?assertMatch(ok,Res),
  +	?assertMatch({ok,{changes,_,_}},Res),
   
   	?debugFmt("multiupdates delete actors",[]),
  -	?assertMatch(ok,exec(Ndl,["actor type1(ac100,ac99,ac98,ac97,ac96);PRAGMA delete;"])),
  +	?assertMatch({ok,{changes,0,5}},exec(Ndl,["actor type1(ac100,ac99,ac98,ac97,ac96);PRAGMA delete;"])),
   	?debugFmt("Deleting individual actor",[]),
   	?assertMatch(ok,exec(Ndl,["actor type1(ac95);PRAGMA delete;"])),
   
   	?debugFmt("multiupdates creating thread",[]),
  -	?assertMatch(ok,exec(Ndl,["actor thread(1) create;",
  +	?assertMatch({ok,{changes,_,_}},exec(Ndl,["actor thread(1) create;",
   					"INSERT INTO thread VALUES (100,'message',10);",
   					"INSERT INTO thread VALUES (101,'secondmsg',20);",
   					"actor user(10) create;",
  
positive.code: 			 exec(Ndl,ReadSome)),
  	?debugFmt("delete 5 and 4",[]),
  	% Not the right way to delete but it works (not transactional)
  	?assertMatch(ok,exec(Ndl,["actor counters(id5,id4);PRAGMA delete;"])),
  	?assertMatch({ok,[{columns,_},
  					  {rows,[{<<"id3">>,_,4,<<"id3">>},
  						  {<<"id2">>,_,3,<<"id2">>},
  						  {<<"id1">>,_,2,<<"id1">>}]}]},
  			 exec(Ndl,ReadSome)),
  	% the right way
  	?assertMatch(ok,exec(Ndl,["actor counters(id3,id2);DELETE FROM actors WHERE id='{{curactor}}';"])),
  	?assertMatch({ok,[{columns,_},
  					  {rows,[{<<"id1">>,_,2,<<"id1">>}]}]},
  			 exec(Ndl,ReadSome)),
  
negative.code: 					  		  {<<"id1">>,_,1,<<"id1">>}]}]},
  			exec(Ndl,ReadSome)),
  	?debugFmt("Increment first 5",[]),
  	?assertMatch({ok,{changes,_,_}},exec(Ndl,["actor counters(id1,id2,id3,id4,id5);",
  					"UPDATE actors SET val = val+1 WHERE id='{{curactor}}';"])),
  	?debugFmt("Select first 5 again ~p",[exec(Ndl,ReadSome)]),
  	?assertMatch({ok,[{columns,_},
  