'Added custom transaction processing for transactional DBMS.
If a DDL operation fails, the entire transaction fails and all future commands are ignored.'

def forwards(self, orm):

    db.create_table('jobsub_ooziestreamingaction', (('oozieaction_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['jobsub.OozieAction'], unique=True, primary_key=True)), ('files', self.gf('django.db.models.fields.CharField')(default='[]', max_length=512)), ('mapper', self.gf('django.db.models.fields.CharField')(max_length=512)), ('reducer', self.gf('django.db.models.fields.CharField')(max_length=512)), ('job_properties', self.gf('django.db.models.fields.TextField')(default='[]')), ('archives', self.gf('django.db.models.fields.CharField')(default='[]', max_length=512))))
    db.send_create_signal('jobsub', ['OozieStreamingAction'])
    db.create_table('jobsub_oozieaction', (('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), ('action_type', self.gf('django.db.models.fields.CharField')(max_length=64))))
    db.send_create_signal('jobsub', ['OozieAction'])
    db.create_table('jobsub_ooziedesign', (('description', self.gf('django.db.models.fields.CharField')(max_length=1024, blank=True)), ('last_modified', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), ('owner', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'])), ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), ('root_action', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['jobsub.OozieAction'])), ('name', self.gf('django.db.models.fields.CharField')(max_length=64))))
    db.send_create_signal('jobsub', ['OozieDesign'])
    db.create_table('jobsub_jobhistory', (('owner', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['auth.User'])), ('submission_date', self.gf('django.db.models.fields.DateTimeField')(auto_now=True, blank=True)), ('design', self.gf('django.db.models.fields.related.ForeignKey')(to=orm['jobsub.OozieDesign'])), ('id', self.gf('django.db.models.fields.AutoField')(primary_key=True)), ('job_id', self.gf('django.db.models.fields.CharField')(max_length=128))))
    db.send_create_signal('jobsub', ['JobHistory'])
    db.create_table('jobsub_ooziemapreduceaction', (('oozieaction_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['jobsub.OozieAction'], unique=True, primary_key=True)), ('files', self.gf('django.db.models.fields.CharField')(default='[]', max_length=512)), ('jar_path', self.gf('django.db.models.fields.CharField')(max_length=512)), ('archives', self.gf('django.db.models.fields.CharField')(default='[]', max_length=512)), ('job_properties', self.gf('django.db.models.fields.TextField')(default='[]'))))
    db.send_create_signal('jobsub', ['OozieMapreduceAction'])
    db.create_table('jobsub_ooziejavaaction', (('oozieaction_ptr', self.gf('django.db.models.fields.related.OneToOneField')(to=orm['jobsub.OozieAction'], unique=True, primary_key=True)), ('files', self.gf('django.db.models.fields.CharField')(default='[]', max_length=512)), ('jar_path', self.gf('django.db.models.fields.CharField')(max_length=512)), ('java_opts', self.gf('django.db.models.fields.CharField')(max_length=256, blank=True)), ('args', self.gf('django.db.models.fields.TextField')(blank=True)), ('job_properties', self.gf('django.db.models.fields.TextField')(default='[]')), ('archives', self.gf('django.db.models.fields.CharField')(default='[]', max_length=512)), ('main_class', self.gf('django.db.models.fields.CharField')(max_length=256))))
    db.send_create_signal('jobsub', ['OozieJavaAction'])
    db.add_column('jobsub_checkforsetup', 'setup_level', self.gf('django.db.models.fields.IntegerField')(default=0), keep_default=False)
    db.commit_transaction()
    if ('jobsub_submission' in connection.introspection.table_names()):
        db.start_transaction()
        db.delete_table('jobsub_submission')
        remove_content_type('jobsub', 'submission')
        db.commit_transaction()
    if ('jobsub_serversubmissionstate' in connection.introspection.table_names()):
        db.start_transaction()
        db.delete_table('jobsub_serversubmissionstate')
        remove_content_type('jobsub', 'serversubmissionstate')
        db.commit_transaction()
    db.start_transaction()
