Hola,
Probablemente lancé una actualización después de un año, lo que llevó a la transición de pg 13 a 15.
Estoy tratando de ejecutar el comando dado con mi propio LC_LANG pero no funciona, obtengo FATAL: data directory “/shared/postgres_data” does not exist. Y, de hecho, no existe… ¿Alguien tiene alguna idea?
De hecho, obtuve el mismo error que tú: “/bin/bash: warning: setlocale: LC_ALL: cannot change locale” cuando intenté mi launch rebuild app, lo que finalmente me llevó a esta publicación. ¿Pudiste resolverlo al final? Los comandos docker run solo me llevaron a más problemas, como se indicó anteriormente.
Agregué un mapeo \-v /var/discourse/shared/standalone:/shared y ahora he avanzado un poco. Es extraño que no esté ahí, sin embargo. El problema podría ser que mi “aplicación” todavía está atascada en alguna versión de 2024 y el “rebuild” (reconstrucción) no funciona. Solo una suposición…
Así que tenía esto en mi app.yml y funcionaba bien:
Quise decir LANG y no LC_LANG. El problema es que si vuelvo a cualquier otra cosa ahora es “demasiado tarde”. Intenté con en_US.UTF_8 y nada, el rebuild siempre falla.
Si no tienes una copia de seguridad actual y no puedes reiniciar tu contenedor antiguo, entonces cambiaría a la plantilla PG13 y obtendría una configuración funcional, luego haría una copia de seguridad, y luego configuraría un nuevo servidor y restauraría la copia de seguridad allí. Puedes configurarlo con el lenguaje que desees cuando sea una base de datos vacía y luego hacer la restauración (¿y tal vez el lenguaje se convierta mágicamente?).
Moverse a un nuevo servidor asegura que no bloquearás tu servidor existente.
Lamentablemente, ya estoy en un estado fallido. Tengo copias de seguridad, pero no puedo restaurarlas ya que el cambio de versión es demasiado grande y hay problemas de dependencias con gem. Tampoco puedo volver a la versión anterior porque el lanzador (launcher) se actualiza automáticamente, lo cual es un poco triste en mi opinión.
Con LC_ALL obtengo:
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.3.0/lib/pups.rb
/usr/local/bin/pups --stdin
/bin/bash: warning: setlocale: LC_ALL: cannot change locale (fr_BE.UTF-8)
I, [2025-12-02T15:46:29.638999 #1] INFO -- : Reading from stdin
/usr/local/lib/ruby/gems/3.3.0/gems/pups-1.3.0/lib/pups/cli.rb:59:in `split': invalid byte sequence in US-ASCII (ArgumentError)
split = conf.split("_FILE_SEPERATOR_")
^^^^^^^^^^^^^^^^^^
from /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.3.0/lib/pups/cli.rb:59:in `run'
from /usr/local/lib/ruby/gems/3.3.0/gems/pups-1.3.0/bin/pups:9:in `<top (required)>'
from /usr/local/bin/pups:25:in `load'
from /usr/local/bin/pups:25:in `<main>'
bootstrap failed with exit code 1
** FAILED TO BOOTSTRAP ** please scroll up and look for earlier error messages, there may be more than one.
./discourse-doctor may help diagnose the problem.
19a63b958021df0ecbc7e21bfea95f1c5ef7b039efd669b5d4af48b05d397a58
Si elimino LC_ALL, entonces ./launcher rebuild app se detiene en:
Performing Consistency Checks
Checking cluster versions ok
Checking database user is the install user ok
Checking database connection settings ok
Checking for prepared transactions ok
Checking for system-defined composite types in user tables ok
Checking for reg* data types in user tables ok
Checking for contrib/isn with bigint-passing mismatch ok
Checking for user-defined encoding conversions ok
Checking for user-defined postfix operators ok
Checking for incompatible polymorphic functions ok
Checking for not-null constraint inconsistencies ok
Creating dump of global objects ok
Creating dump of database schemas ok
lc_collate values for database “template1” do not match: old “fr_BE.UTF-8”, new “en_US.UTF-8”
Con la línea docker “manual” mencionada en la publicación superior, también tuve que vincular cosas en /etc/postgresql a /var/... ya que faltaban algunos archivos y finalmente obtuve el mismo error que el anterior.
Intentaré una nueva instalación y restauraré allí.
Dudo que sea cierto que el cambio de versión sea demasiado grande. ¿Has configurado un nuevo servidor e intentado restaurar esa copia de seguridad? He restaurado una copia de seguridad varios años más antigua que el sitio donde se restauró. Estoy bastante seguro de que funcionará. Muevo sitios a nuevos servidores varias veces al mes. La única vez que ha habido un problema fue cuando había un índice corrupto, algo que no he visto en bastante tiempo.
¿Has intentado renombrar postgres_old a postgres_data y ejecutar
./launcher start app
¡Oh! ¡Esa es una buena idea! Por eso debería leer la publicación completa antes de responder.
Confirmo que una nueva instalación también falla con LC_ALL configurado, de la misma manera que se muestra arriba (\FILE_SEPERATOR\ …). Sin embargo, sin LC_ALL funciona bien.
Pude restaurar mi guardado con una nueva instalación limpia en el último master, gracias. Arreglar estos problemas seguirá siendo un misterio…