Gracias Daniel R. y Javier R.
Al final hice lo que me recomendasteis ambos en database.yml colocar
encoding: utf8.
Por último creo que mi problema estaba en como enviaba el xml para
generar el contenido,
lo estoy haciendo desde un cliente java (cliente rest) y creo que en el
xml indicaba
codificación utf8 pero no era la que yo enviaba al servidor. Ahora la
codificación a
utf8 del contenido del método post la realizo directamente en la request
pasandole el
mismo contenido xml y funciona todo correctamente.
Un saludo