<SYSTEM_TASK:>
Solve the following problem using Python, implementing the functions described below, one line at a time
<END_TASK>
<USER_TASK:>
Description:
 def start_transaction(self):
 """Begin a transaction to group operations on the refpkg. All the operations until the next call to ``commit_transaction`` will be recorded as a single operation for rollback and rollforward, and recorded with a single line in the log. """

        if self.current_transaction:
            raise ValueError("There is already a transaction going")
        else:
            initial_state = copy.deepcopy(self.contents)
            self.current_transaction = {'rollback': initial_state,
                                        'log': '(Transaction left no log message)'}