One thing you need to know about transactions, is how they work.
They are session based, and by session means that each time you let a job login to the database, it creates a unique session.
That means that if job #1 starts a transaction, job #2 will be unaware of the things job #1 has done, until job #1 stores the changes in the database with a commit. Only the session making changes to the data will have access to it before it has been properly stored with a commit.