# Stable Rails application in production using Oracle db causes replication failures due to sequence

**URL:** <https://www.ruby-forum.com/t/stable-rails-application-in-production-using-oracle-db-causes-replication-failures-due-to-sequence/260098>\
**Category:** Uncategorized\
**Created:** [August 4, 2020, 8:48pm UTC](https://www.ruby-forum.com/t/stable-rails-application-in-production-using-oracle-db-causes-replication-failures-due-to-sequence/260098 "2020-08-04T20:48:21Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![jmb48825](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8baadc/32.png) [@jmb48825](https://www.ruby-forum.com/u/jmb48825)\
**Post date:** [August 4, 2020, 8:48pm UTC](https://www.ruby-forum.com/t/stable-rails-application-in-production-using-oracle-db-causes-replication-failures-due-to-sequence/260098/1 "2020-08-04T20:48:21Z")

</div>

My installation replicates my backend Oracle db across multiple servers. There have been chronic replication failures because Rails won’t let Oracle manage sequences with its own triggers. The proposed solution is to add `self.set_sequence_name = :autogenerated` to my models. It doesn’t seem very DRY to edit all 30+ of my database table models with this statement. I would prefer some solution like an oracle.rb initialization file, or maybe some mechanism in the module I use to extend ActiveRecord::Base that my models extend.  
Please know that RoR is not my first language, as a result my head is spinning as I try to evaluate possible strategies. I just know I need to adjust Rails behavior to allow Oracle to manage its own sequences and triggers.  
My application is built on RoR 5.2 and my Oracle version is 11g.

---

<div class="post-metadata">

**Author:** ![baxang](https://www.ruby-forum.com/user_avatar/www.ruby-forum.com/baxang/32/1822_2.png) [@baxang](https://www.ruby-forum.com/u/baxang)\
**Post date:** [August 6, 2020, 8:54am UTC](https://www.ruby-forum.com/t/stable-rails-application-in-production-using-oracle-db-causes-replication-failures-due-to-sequence/260098/2 "2020-08-06T08:54:37Z")

</div>

It sounds to me you can add that line to `ApplicationRecord` class. I think a Rails project has this by default. Then all your model will inherit it.

```auto
class ApplicationRecord < ActiveRecord::Base
  self.set_sequence_name = :autogenerated
end

class YourModel < ApplicationRecord
end

class AnotherModel < ApplicationRecord
end

```

This forum is for general Ruby, so you might get better answers on one of Ruby on Rails forums.

---

<div class="post-metadata">

**Author:** ![jmb48825](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/j/8baadc/32.png) [@jmb48825](https://www.ruby-forum.com/u/jmb48825)\
**Post date:** [August 6, 2020, 10:49am UTC](https://www.ruby-forum.com/t/stable-rails-application-in-production-using-oracle-db-causes-replication-failures-due-to-sequence/260098/3 "2020-08-06T10:49:08Z")

</div>

Thank you for your advice. It is so difficult to find help for specific scenarios like this.
