split API for transient and persistent vectors