1. A computer readable medium embodying instructions executable by a processor to perform a method for executing a transaction comprising: providing a buffer to hold data for uncommitted memory write operations of a regular transaction; converting the regular transaction to a reservation-required transaction (RRT) upon the buffer overflowing for the uncommitted memory write operations of the regular transaction; reserving, in the RRT, every memory location the RRT intends to read or modify before issuing a store operation to a transactional memory address, wherein the transactional memory address is guaranteed to maintain a most recent value recorded before the RRT is started if the RRT is aborted, and wherein the reservation allows all memory locations accessed by the RRT to be reserved in advance, which guarantees completion of the RRT if a store operation to a transactional memory address is executed; and aborting the RRT before the store operation to the transactional memory address is executed if reservation of any transactional memory address of the RRT cannot be completed.