title: `Model.first(:order => 'random()')` always returns the same object
body: <p>When I try to do this:</p>
  
  <pre><code>questions = Array.new
  2.times do
    question = Question.first(:order =&gt; 'random()')
    questions &lt;&lt; question
  end
  </code></pre>
  
  <p>and inspect the element:</p>
  
  <pre><code>raise questions.inspect
  </code></pre>
  
  <p>It returns an array including two same objects, but I expect two different objects in my <code>questions</code> array. What do I do wrong?</p>