title: before_validation not being called?
body: <p>I'm having a weird issue for which I can't find a logical explanation.</p>
  
  <p>I'm investigating a bug and put some logging in place (through Rollbar) so I can see the evolution some instances of one of my models.</p>
  
  <p>Here is what I got: </p>
  
  <pre><code>class Connexion &lt; ActiveRecord::Base
      before_validation :save_info_in_rollbar
      after_save :save_info_in_rollbar
  
      def save_info_in_rollbar
        Rollbar.log("debug", "Connexion save", :connexion_id =&gt; self.id, :connexion_details =&gt; self.attributes)
      end
  end
  </code></pre>
  
  <p>Now I am getting loads of data in rollbar (pretty much 2 rows for every time a connexion is created/updated). But the weird thing is the following: for some connexions (=> exactly the ones with faulty data which I am investigating), I am getting no data at all!</p>
  
  <p>I don't get how it's possible for a connexion to be created and persisted to the DB, and not have any trace of the <code>before_validation</code> logging.
  It looks like the callback is not called, but unless I'm mistaken, it's supposed to be the first one in the callback order => what could prevent it from being called?</p>
  
  <p>EDIT >> Copy and paste from a reply, might be relevant:
  There are 3 cases in which a connexion is created or updated, and thoses cases are : </p>
  
  <ul>
  <li>.connexions.create() </li>
  <li>connexion.attr = "value"; connexion.save! </li>
  <li>connexion.update_attributes(attr: "value")</li>
  </ul>