anchor.diff:          ?assertEqual(ok, insert_range(SKey, 5, def, 'Imem', IsSec)),
           ?assertEqual(5,imem_meta:table_size(def)),
   
  -        Sql3 = "select col1, col2 from def;",
  +        Sql3 = "select col1, col2 from def where col2 <= 5;",
  +        io:format(user, "Query: ~p~n", [Sql3]),
           {ok, _Clm3, _RowFun3, StmtRef3} = imem_sql:exec(SKey, Sql3, 100, 'Imem', IsSec),
           try
               ?assertEqual(ok, imem_statement:fetch_recs_async(SKey, StmtRef3, self(), [{tail_mode,true}], IsSec)),
  
positive.code:         after
              ?assertEqual(ok, close(SKey, StmtRef3))
          end,
          ?assertEqual(ok, close(SKey, StmtRef2)),
          ?assertEqual(ok, imem_sql:exec(SKey, "drop table def;", 0, 'Imem', IsSec)),
  
  
negative.code:                     , blockSize=100 ::integer()     %% could be adaptive
                      , remaining ::integer()         %% rows remaining to be fetched. initialized to Limit and decremented
                      , opts = [] ::list()            %% fetch options like {tail_mode,true}
                      , tailSpec  ::any()             %% compiled matchspec for master table condition (bound with MetaRec) 
                      }).
  
  -record(state,                  %% state for statment process, including fetch subprocess
  