code: def _add_record(table, data, buffer_size):
      
      fields = table.fields
      # remove any keys that aren't relation fields
      for invalid_key in set(data).difference([f.name for f in fields]):
          del data[invalid_key]
      table.append(Record.from_dict(fields, data))
      # write if requested and possible
      if buffer_size is not None and table.is_attached():
          # for now there isn't a public method to get the number of new
          # records, so use private members
          if (len(table) - 1) - table._last_synced_index > buffer_size:
              table.commit()
docs: Prepare and append a Record into its Table; flush to disk if necessary.