Disculpa la demora jaime, estoy trabajando en un postgres 9.3, he estado analizando la posibilidad de brincar al 9.5 ya que no utilizo nada en especial que me dificulte la migración, pero por el momento me quedo en la que estoy y cambió los varchar por text. Si son muchas tablas las que se afectan, prácticamente el 95% de ellas, ademas manejo varias schemas, por lo que potencialmente si habria miles de alters, entonces si tendria que hacer un vacum a la tabla que mencionas por seguridad.
2016-10-30 9:14 GMT-06:00 Jaime Casanova <jaime.casan...@2ndquadrant.com>: > 2016-10-25 20:06 GMT-05:00 Ivan Perales M. <ivan.pera...@gmail.com>: > > En los ultimos meses he tenido que estar cambiando el tamaño de los > varchar, > > estaba pensando en mejor cambiar todo los varchar a text, ya que como he > > leido por ahi postgres implementa nativamente ambos tipos con la misma > > estructura en c, entonces no deberia afectar la unica diferencia es que > el > > varchar tiene un límite. La pregunta es que si cambio el varchar a text > > afecta mucho la estructura de la bd? a tal grado de necesitar hacer un > > vacuum full? el vacuum por el momento no seria posible por eso la > pregunta. > > > > Saludos, > > varchar y text son el mismo tipo de dato internamente así que no > afectará en nada la estructura de las tablas y el cambio debería ser > muy rápido pues no hay cambio de datos en las tablas. > > el peor efecto que habrá es un update en pg_attribute por cada alter > table (lo que significa un registro muerto por cada alter table) si > son muchas tablas quizá un vacuum (normal no full) sobre pg_attribute > cada tantas tablas pero esto solo si hablamos de miles de alter table. > > a todo esto, de que versión de postgres estamos hablando? algunas de > las cosas que dije podrían no ser exactas dependiendo de la versión. > > -- > Jaime Casanova www.2ndQuadrant.com > PostgreSQL Development, 24x7 Support, Remote DBA, Training & Services > -- Lindolfo Iván Perales Mancinas Solo existen 10 tipos de personas en el mundo, las que saben binario y las que no.