Currently metadata is atomic at the VG level. May need ability to update subset of LVs atomically. May need ability to extend LVs into free space in parallel. [This bugzilla deals with conceptual metadata changes (internal representation). A separate bugzilla deals with external formats.]
Since RHEL 6.3 External Beta has begun, and this bug remains unresolved, it has been rejected as it is not proposed as exception or blocker. Red Hat invites you to ask your support representative to propose this request, if appropriate and relevant, in the next release of Red Hat Enterprise Linux.
More or less, see bug 817770 -- my proposal would be to make the data structures much more opaque, with query and modify interfaces. Implementation of the "transaction" interface would be a responsibility of individual "formats" (where lvm1 and lvm2 formats can share substantial amount of code). However, removal of lvmcache is more or less an unavoidable first step -- the format code calls into lvmcache create dependency loops and non-local side-effects, which make it very hard to expose a semantically coherent format API. As a side matter, I would seriously entertain the option of implementing (portions) of the internal LVM library in C++ instead of vanilla C. The above-mentioned query/modify interface abstraction would be much simpler and more transparent in C++. Additionally, a lot of LVM code could hugely benefit from automatic resource management (RAII), eliminating entire classes of bugs that exist nowadays. Any externally visible APIs can still be in C without substantial extra effort. Finally, a switch from C to C++ is relatively painless and can be quite gradual.
This request was not resolved in time for the current release. Red Hat invites you to ask your support representative to propose this request, if still desired, for consideration in the next release of Red Hat Enterprise Linux.
This request was erroneously removed from consideration in Red Hat Enterprise Linux 6.4, which is currently under development. This request will be evaluated for inclusion in Red Hat Enterprise Linux 6.4.
This request was evaluated by Red Hat Product Management for inclusion in the current release of Red Hat Enterprise Linux. Since we are unable to provide this feature at this time, it has been proposed for the next release of Red Hat Enterprise Linux.
This is not a change suitable for RHEL6, moving to RHEl7 for consideration.