'Get a list of objects which are in a storage policy different
from the container\'s storage policy.
:param start: last reconciler sync point
:param count: maximum number of entries to get
:returns: list of dicts with keys: name, created_at, size,
content_type, etag, storage_policy_index'

def get_misplaced_since(self, start, count):

    qry = '\n                                                SELECT    ROWID,    name,    created_at,    size,    content_type,    etag,\n                                                                            deleted,    storage_policy_index\n                                                FROM    object\n                                                WHERE    ROWID    >    ?\n                                                AND    storage_policy_index    !=    (\n                                                                SELECT    storage_policy_index    FROM    container_stat    LIMIT    1)\n                                                ORDER    BY    ROWID    ASC    LIMIT    ?\n                                '
    self._commit_puts_stale_ok()
    with self.get() as conn:
        try:
            cur = conn.execute(qry, (start, count))
        except sqlite3.OperationalError as err:
            if ('no    such    column:    storage_policy_index' not in str(err)):
                raise
            return []
        return list((dict(row) for row in cur.fetchall()))
