There are 2 different sessions at work:
there is the session that is created for validation failure, there is another session set for form persistence.
the form persistence session is only set when validation passes.
if validation fails, the validation session is set.