When innodb_file_format is set to “Barracuda” and a table is
      created with ROW_FORMAT=DYNAMIC or ROW_FORMAT=COMPRESSED, long
      column values are stored fully off-page, and the clustered index
      record contains only a 20-byte pointer to the overflow page.
    
Whether any columns are stored off-page depends on the page size and the total size of the row. When the row is too long, InnoDB chooses the longest columns for off-page storage until the clustered index record fits on the B-tree page.
      The DYNAMIC row format maintains the efficiency of storing the
      entire row in the index node if it fits (as do the COMPACT and
      REDUNDANT formats), but this new format avoids the problem of
      filling B-tree nodes with a large number of data bytes of long
      columns. The DYNAMIC format is based on the idea that if a
      portion of a long data value is stored off-page, it is usually
      most efficient to store all of the value off-page. With DYNAMIC
      format, shorter columns are likely to remain in the B-tree node,
      minimizing the number of overflow pages needed for any given row.
    
This is the User’s Guide for InnoDB storage engine 1.1 for MySQL 5.5, generated on 2010-04-13 (revision: 19994) .

