Hola,
Actualmente estoy intentando actualizar nuestra instancia DEV a la última Beta 7, partiendo de la Beta 2.
Se está ejecutando en la rama tests-passed predeterminada.
Mi problema es que la reconstrucción del contenedor termina en un problema de conectividad (supongo que con GitHub):
I, [2025-07-28T12:35:19.480463 #1] INFO -- : Replacing # postgres with if [ -f /root/install_postgres ]; then
/root/install_postgres
rm /root/install_postgres
fi
sv start postgres || exit 1
in /etc/service/unicorn/run
I, [2025-07-28T12:35:19.480838 #1] INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse git clean -f
I, [2025-07-28T12:35:19.511065 #1] INFO -- :
I, [2025-07-28T12:35:19.511112 #1] INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
set -o errexit
if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
git remote set-branches --add origin main
git remote set-branches origin tests-passed
git fetch --depth 1 origin tests-passed
else
git fetch --tags --prune-tags --prune --force origin
fi
'
error: RPC failed; curl 56 Recv failure: Connection reset by peer
error: 44 bytes of body are still expected
fatal: expected flush after ref listing
I, [2025-07-28T12:37:22.158398 #1] INFO -- :
I, [2025-07-28T12:37:22.158628 #1] INFO -- : Terminating async processes
La conectividad general en el host es correcta. Si limpio la caché de compilación de Docker antes de ejecutar ./launcher rebuild app, puedo ver que en realidad descarga la versión más reciente, obtiene todas las imágenes del contenedor, etc., pero aún así falla después:
Salida larga de stdout
I, [2025-07-28T12:19:42.269421 #1] INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
set -o errexit
if [ $(git rev-parse --is-shallow-repository) == "true" ]; then
git remote set-branches --add origin main
git remote set-branches origin tests-passed
git fetch --depth 1 origin tests-passed
else
git fetch --tags --prune-tags --prune --force origin
fi
'
From https://github.com/discourse/discourse
- [deleted] (none) -> origin/dependabot/bundler/nokogiri-1.18.9
- [deleted] (none) -> origin/dependabot/bundler/playwright-ruby-client-1.54.0
- [deleted] (none) -> origin/dependabot/bundler/propshaft-1.2.0
- [deleted] (none) -> origin/dependabot/npm_and_yarn/babel-plugin-ember-template-compilation-3.0.0
- [deleted] (none) -> origin/dependabot/npm_and_yarn/glob-11.0.3
- [deleted] (none) -> origin/dependabot/npm_and_yarn/playwright-1.54.1
- [deleted] (none) -> origin/dev/decorate-quote-collapsed-content-properly
- [deleted] (none) -> origin/dev/extract-invite-guardian
- [deleted] (none) -> origin/dev/mt/discourse-category-custom-fields
- [deleted] (none) -> origin/dev/mt/discourse-group-users
- [deleted] (none) -> origin/dev/mt/discourse-groups
- [deleted] (none) -> origin/dev/mt/discourse-muted-users
- [deleted] (none) -> origin/dev/mt/requires-set
- [deleted] (none) -> origin/dev/no-more-widgets
- [deleted] (none) -> origin/dev/use-themeable-site-settings-horizon
- [deleted] (none) -> origin/enable-new-topic-btn-on-restricted-category
- [deleted] (none) -> origin/feature-admin-filter-controls
- [deleted] (none) -> origin/feature/enable-rich-editor-for-all
- [deleted] (none) -> origin/filtermagic
- [deleted] (none) -> origin/fix/mt/log-failed-downloads
- [deleted] (none) -> origin/fix/translated-badge-title
- [deleted] (none) -> origin/layout-container-dev
- [deleted] (none) -> origin/loic-upgrade-rails-8.0
- [deleted] (none) -> origin/media-convert-job
- [deleted] (none) -> origin/merge-sso-destination-url-cookie-with-destination-url-cookie
- [deleted] (none) -> origin/mt/set_store
- [deleted] (none) -> origin/pento/dev-flag-reason-tests
- [deleted] (none) -> origin/playwright-1.53
- [deleted] (none) -> origin/refactor-color-palette
- [deleted] (none) -> origin/remove-suspended-and-deleted-users-from-leaderboard
- [deleted] (none) -> origin/rollup-theme-experiment
- [deleted] (none) -> origin/ux-editor-toolbar-mobile-scroll
- [deleted] (none) -> origin/ux/sidebar-show-messages-count
43ddd4ef3..ea5b5b6c0 main -> origin/main
* [new branch] 0-a-depr-html-safe -> origin/0-a-depr-html-safe
* [new branch] 0-a-tabs -> origin/0-a-tabs
* [new branch] add-composer-mention-warnings -> origin/add-composer-mention-warnings
187f13d67..8d4a86f25 add-plugin-outlet-wrapper-to-login-template -> origin/add-plugin-outlet-wrapper-to-login-template
* [new branch] ai_default_llm -> origin/ai_default_llm
* [new branch] content-border-color -> origin/content-border-color
+ 51077ac74...088f149a6 dependabot/bundler/excon-1.2.8 -> origin/dependabot/bundler/excon-1.2.8 (forced update)
+ 36699b311...e3f5c2d0d dependabot/bundler/jwt-3.1.2 -> origin/dependabot/bundler/jwt-3.1.2 (forced update)
* [new branch] dependabot/bundler/octokit-10.0.0 -> origin/dependabot/bundler/octokit-10.0.0
* [new branch] dependabot/bundler/stripe-15.3.0 -> origin/dependabot/bundler/stripe-15.3.0
+ def825f3f...b5a5f3924 dependabot/bundler/web-push-3.0.2 -> origin/dependabot/bundler/web-push-3.0.2 (forced update)
* [new branch] dependabot/bundler/zendesk_api-3.1.1 -> origin/dependabot/bundler/zendesk_api-3.1.1
+ f4d832ec8...5aa0145f3 dependabot/npm_and_yarn/embroider-0ad991d471 -> origin/dependabot/npm_and_yarn/embroider-0ad991d471 (forced update)
* [new branch] dependabot/npm_and_yarn/fortawesome/fontawesome-free-7.0.0 -> origin/dependabot/npm_and_yarn/fortawesome/fontawesome-free-7.0.0
* [new branch] dependabot/npm_and_yarn/jspreadsheet-ce-5.0.3 -> origin/dependabot/npm_and_yarn/jspreadsheet-ce-5.0.3
* [new branch] dependabot/npm_and_yarn/lint-fda1ac657e -> origin/dependabot/npm_and_yarn/lint-fda1ac657e
+ e46dc3798...d3420e3eb dependabot/npm_and_yarn/prosemirror-f8434604ae -> origin/dependabot/npm_and_yarn/prosemirror-f8434604ae (forced update)
* [new branch] dependabot/npm_and_yarn/puppeteer-core-24.15.0 -> origin/dependabot/npm_and_yarn/puppeteer-core-24.15.0
+ 4bcbc028d...03b9759db dev-floatkit-autocomplete-d-editor -> origin/dev-floatkit-autocomplete-d-editor (forced update)
+ ea5bba76a...03b9759db dev-floatkit-autocomplete-d-editor-qa -> origin/dev-floatkit-autocomplete-d-editor-qa (forced update)
* [new branch] dev/decorate-cooked-state -> origin/dev/decorate-cooked-state
56e6c9ae1..11c480f88 dev/no-more-widgets-smoke-test -> origin/dev/no-more-widgets-smoke-test
* [new branch] dev/post-keep-detail-state -> origin/dev/post-keep-detail-state
* [new branch] dev/prevent-rerenderings -> origin/dev/prevent-rerenderings
* [new branch] dev/remove-redundant-staff-check-6 -> origin/dev/remove-redundant-staff-check-6
1f3bbee91..00dfb95b1 dev/try-fix-flakys-tss -> origin/dev/try-fix-flakys-tss
* [new branch] dual-mode-palettes-wip -> origin/dual-mode-palettes-wip
* [new branch] feature/color-mode-preference -> origin/feature/color-mode-preference
* [new branch] feature/type-upload-in-type-objects -> origin/feature/type-upload-in-type-objects
* [new branch] feature/use-current-user-tz-instead-of-guess-local-dates -> origin/feature/use-current-user-tz-instead-of-guess-local-dates
* [new branch] filter-tips-dmenu-martinwip -> origin/filter-tips-dmenu-martinwip
* [new branch] filter-updates -> origin/filter-updates
* [new branch] fix-color-palette-dark -> origin/fix-color-palette-dark
* [new branch] fix/missing-user-custom-preferences-outlet-class-in-connector -> origin/fix/missing-user-custom-preferences-outlet-class-in-connector
* [new branch] improve_no_database_error_patch -> origin/improve_no_database_error_patch
* [new branch] improve_pg_adapter_new_client_error -> origin/improve_pg_adapter_new_client_error
* [new branch] loic-pitchfork -> origin/loic-pitchfork
* [new branch] messages-dropdown-d-menu -> origin/messages-dropdown-d-menu
* [new branch] my-pref-lang -> origin/my-pref-lang
* [new branch] notification-panel-refactor -> origin/notification-panel-refactor
* [new branch] pinned-dmenu -> origin/pinned-dmenu
* [new branch] rollup-plugin-experiment -> origin/rollup-plugin-experiment
* [new branch] rollup-theme-experiment-cross-theme-import -> origin/rollup-theme-experiment-cross-theme-import
* [new branch] samsaffron/codex/convert-filter-tips-to-use-dmenu -> origin/samsaffron/codex/convert-filter-tips-to-use-dmenu
8cb90072e..710d9fd41 sandbox/design-1 -> origin/sandbox/design-1
1f97cf422..aa2fb29fa sandbox/dev-xp-1 -> origin/sandbox/dev-xp-1
817a743cb..3428acddc sandbox/member-xp-1 -> origin/sandbox/member-xp-1
+ d182efe6f...a0aba00c7 sandbox/member-xp-2 -> origin/sandbox/member-xp-2 (forced update)
* [new branch] source-identify-modulepreload -> origin/source-identify-modulepreload
+ 9aa6daa1f...c56258634 split-login-admin-settings -> origin/split-login-admin-settings (forced update)
a83bd0f67..41e1152f6 stable -> origin/stable
+ 293de3a75...e31549885 temp-user-creation-debug-logging -> origin/temp-user-creation-debug-logging (forced update)
43ddd4ef3..ea5b5b6c0 tests-passed -> origin/tests-passed
* [new branch] theme-upload-cleanup -> origin/theme-upload-cleanup
* [new branch] translations-from-crowdin-main -> origin/translations-from-crowdin-main
+ 9f8fd9214...c3562ed3a translations-from-crowdin-stable -> origin/translations-from-crowdin-stable (forced update)
+ 4ffab7134...e211b4a55 unicode-mentions-in-composer-rte -> origin/unicode-mentions-in-composer-rte (forced update)
* [new branch] ux-footer-button-squish -> origin/ux-footer-button-squish
* [new branch] ux-horizon-discotoc -> origin/ux-horizon-discotoc
* [new branch] ux-unify-appearance-filters -> origin/ux-unify-appearance-filters
b0c2d83ec..045aefecb ux/horizon-mobile-composer -> origin/ux/horizon-mobile-composer
* [new branch] ux/sidebar-my-messages-enhancements -> origin/ux/sidebar-my-messages-enhancements
+ 28d11bbd0...6f7d9e816 variable-additions-2 -> origin/variable-additions-2 (forced update)
39d2564ba..57dcfda6a vite-squashed-rebased -> origin/vite-squashed-rebased
I, [2025-07-28T12:19:43.174876 #1] INFO -- :
I, [2025-07-28T12:19:43.174943 #1] INFO -- : > cd /var/www/discourse && sudo -H -E -u discourse bash -c '
set -o errexit
if [[ $(git symbolic-ref --short HEAD) == tests-passed ]] ; then
git pull
else
git -c advice.detachedHead=false checkout tests-passed
fi
'
error: RPC failed; curl 56 Recv failure: Connection reset by peer
error: 5470 bytes of body are still expected
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
fatal: could not fetch bff89c0762e874ec88d553d89901dbda4fa89f20 from promisor remote
I, [2025-07-28T12:23:50.121438 #1] INFO -- :
Mientras intenta obtener datos de GitHub, no veo actividad alguna en el host en htop.
Detalles del host: VM de Proxmox ejecutando Debian 11, 4 núcleos, 12 GB de memoria. Hay mucha memoria libre durante la reconstrucción, por lo que no debería ser un problema de memoria.
El servidor está alojado en Alemania, por lo que no debería haber nada que bloquee el acceso a GitHub.
He descubierto que
fetch-pack: unexpected disconnect while reading sideband packet
fatal: early EOF
fatal: fetch-pack: invalid index-pack output
indica un tiempo de espera, por ejemplo, cuando la conexión es demasiado lenta. Al verificar la velocidad de la conexión, muestra alrededor de 890 Mbit/s de subida y bajada. El almacenamiento es todo NVMe, por lo que no veo ninguna razón para que se agote el tiempo en este paso.
He intentado limpiar toda la caché de compilación de Docker, actualizar primero el sistema host a los paquetes más recientes, reiniciar e incluso moverlo a un nodo diferente en el clúster para descartar un host defectuoso como causa del problema.
Casi me olvido de añadir: Al dirigirme al Panel de Administración, obtengo la información de que no estoy en la versión más reciente, pero al hacer clic en Click here to update se produce un error:
Server-Error
while loading /admin/docker/repos
Errorcode: 502 error
También puedo ver errores de tiempo de espera allí:
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:128:in `block in wait_poll'
<internal:kernel>:187:in `loop'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:117:in `wait_poll'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:78:in `internal_poll'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:204:in `internal_poll'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:73:in `block in poll'
/usr/local/lib/ruby/3.3.0/monitor.rb:201:in `synchronize'
/usr/local/lib/ruby/3.3.0/monitor.rb:201:in `mon_synchronize'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:82:in `synchronize'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool/queue.rb:73:in `poll'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:868:in `acquire_connection'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:564:in `checkout'
activerecord-7.2.2.1/lib/active_record/connection_adapters/abstract/connection_pool.rb:421:in `with_connection'
activerecord-7.2.2.1/lib/active_record/connection_handling.rb:296:in `with_connection'
activerecord-7.2.2.1/lib/active_record/transactions.rb:410:in `with_transaction_returning_status'
activerecord-7.2.2.1/lib/active_record/transactions.rb:366:in `save!'
activerecord-7.2.2.1/lib/active_record/suppressor.rb:56:in `save!'
activerecord-7.2.2.1/lib/active_record/persistence.rb:55:in `create!'
mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:128:in `process_queue'
mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:77:in `worker_loop'
mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:63:in `block (2 levels) in ensure_worker_threads'
y
excon-1.2.5/lib/excon/socket.rb:386:in `select_with_timeout'
excon-1.2.5/lib/excon/socket.rb:258:in `rescue in read_nonblock'
excon-1.2.5/lib/excon/socket.rb:228:in `read_nonblock'
excon-1.2.5/lib/excon/socket.rb:89:in `block in readline'
<internal:kernel>:187:in `loop'
excon-1.2.5/lib/excon/socket.rb:78:in `readline'
excon-1.2.5/lib/excon/response.rb:73:in `block in parse'
<internal:kernel>:187:in `loop'
excon-1.2.5/lib/excon/response.rb:72:in `parse'
excon-1.2.5/lib/excon/middlewares/response_parser.rb:7:in `response_call'
excon-1.2.5/lib/excon/connection.rb:472:in `response'
excon-1.2.5/lib/excon/connection.rb:297:in `request'
/var/www/discourse/lib/discourse_updates.rb:136:in `new_features_payload'
/var/www/discourse/app/jobs/scheduled/check_new_features.rb:24:in `execute'
/var/www/discourse/app/jobs/base.rb:316:in `block (2 levels) in perform'
rails_multisite-6.1.0/lib/rails_multisite/connection_management/null_instance.rb:49:in `with_connection'
rails_multisite-6.1.0/lib/rails_multisite/connection_management.rb:21:in `with_connection'
/var/www/discourse/app/jobs/base.rb:303:in `block in perform'
/var/www/discourse/app/jobs/base.rb:299:in `each'
/var/www/discourse/app/jobs/base.rb:299:in `perform'
/var/www/discourse/app/jobs/base.rb:379:in `perform'
mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:137:in `process_queue'
mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:77:in `worker_loop'
mini_scheduler-0.18.0/lib/mini_scheduler/manager.rb:63:in `block (2 levels) in ensure_worker_threads'
Realmente se me han acabado las ideas. Intenté aumentar los recursos del sistema, pero añadir más núcleos o memoria no cambia nada; el error persiste.
También intenté aumentar el git http.postBuffer, y ahora se queda atascado un poco más antes de fallar.
Espero que alguien tenga una idea, ya que no he encontrado más hilos o publicaciones sobre este tipo de error.
¡Gracias!