Embodiments of the present invention provide a data storage apparatus with
new features to more easily enable atomic transactions. Rather than
having the host system issue the multiple logging commands to the data
storage apparatus, the data storage apparatus can be modified so that it
can perform the logging function itself. In one embodiment, a data
storage controller of a data storage apparatus for implementing an atomic
transaction comprises a receiving module configured to receive from a
host one or more commands to be executed as an atomic transaction; a log
recording module, configured to record in a nonvolatile storage a log
containing the one or more commands of the atomic transaction, the log to
be administered by the data storage controller and not by the host; and
an execution module configured to perform the one or more commands of the
atomic transaction.