anchor.diff:      BackFile = filename:join([SnapDir, atom_to_list(Tab)++?BKP_EXTN]),
       NewBackFile = filename:join([SnapDir, atom_to_list(Tab)++?BKP_TMP_EXTN]),
       % truncates the file if already exists and writes the table props
  -    TblPropBin = term_to_binary({prop, imem_if:table_info(Tab, user_properties)}),
  +    TblPropBin = case imem_if:read(ddTable, {imem_meta:schema(),Tab}) of
  +        [] ->           term_to_binary({prop, imem_if:table_info(Tab, user_properties)});
  +        [DDTableRow] -> term_to_binary({prop, [DDTableRow]})
  +    end,
       PayloadSize = byte_size(TblPropBin),
       ok = file:write_file(NewBackFile, << PayloadSize:32, TblPropBin/binary >>),
       Me = self(),
  
positive.code:                     andalso not imem_meta:is_local_time_partitioned_table(T)
                  end, imem_meta:all_tables()).
  
  %% ----- PRIVATE APIS ------------------------------------------------
  
  close_file(Me, FHndl) ->
  
negative.code:     info({zip, ZipFiles}, [{filename:absname(Z),CntFiles}|ContentFiles]).
  
  
  % take snapshot of all/some of the current in memory imem tables
  take([all]) ->                                      % standard snapshot tables (no local time partitioned tables)
      take({tabs, all_snap_tables()});
  take([local]) ->                                    % local time partitioned tables
      take({tabs, all_local_time_partitioned_tables()});
  take({tabs, [_R|_] = RegExs}) when is_list(_R) ->   % multiple tables as list of strings or regex strings
      FilteredSnapReadTables = lists:filter(fun(T) -> imem_meta:is_readable_table(T) end, imem_meta:all_tables()),
      ?Debug("tables readable for snapshot ~p~n", [FilteredSnapReadTables]),
  
  