title: db.StringProperty but property is occasionally datastore_types.Text?
body: <p>Are there any circumstances under which GAE datastore might change a property type from <code>StringProperty</code> to <code>TextProperty</code> (effectively ignoring the model definition)?</p>
  
  <p>Consider the following situation (simplified):</p>
  
  <pre><code>class MyModel(db.Model):
      user_input = db.StringProperty(default='', multiline=True)
  </code></pre>
  
  <p>Some entity instances of this model in my datastore have a datatype of <code>TextProperty</code> for 'user_input' (rather than simple <code>str</code>) and are therefore not indexed. I can fix this by retrieving the entity, setting <code>model_instance.user_input = str(model_instance.user_input)</code> and then putting the entity back into the datastore.</p>
  
  <p>What I don't understand is how this is happening to only some entities, when there have been no changes to this model. Is it possible that the'type' of a db.model's property can be overridden from <code>StringProperty</code> to <code>TextProperty</code>?</p>