From cdd3f6fd2874d4d997327a1b00827d10f32e7f94 Mon Sep 17 00:00:00 2001
From: Jakub Wartak <jakub.wartak@enterprisedb.com>
Date: Mon, 26 May 2025 12:50:54 +0200
Subject: [PATCH v2] Remove HINT message for "unexpected data beyond EOF" error

The previous HINT message ("This has been seen to occur with buggy kernels;
consider updating your system"), was added in ffae5cc5a602 (2006) and is not
longer the primary culprit for those kind of errors.

Author: Jakub Wartak <jakub.wartak@enterprisedb.com>
Reviewed-by: Robert Haas <rhaas@postgresql.org>
Reviewed-by: Andres Freund <andres@anarazel.de>
Reviewed-by: Christoph Berg <myon@debian.org>
Discussion: https://postgr.es/m/CAKZiRmxNbcaL76x=09Sxf7aUmrRQJBf8drzDdUHo+j9_eM+VMg@mail.gmail.com
---
 src/backend/po/de.po                |  5 -----
 src/backend/po/es.po                |  5 -----
 src/backend/po/fr.po                |  7 -------
 src/backend/po/id.po                |  5 -----
 src/backend/po/it.po                |  5 -----
 src/backend/po/ja.po                |  5 -----
 src/backend/po/ka.po                |  5 -----
 src/backend/po/ko.po                |  7 -------
 src/backend/po/pl.po                |  5 -----
 src/backend/po/pt_BR.po             |  5 -----
 src/backend/po/ru.po                |  9 ---------
 src/backend/po/sv.po                |  5 -----
 src/backend/po/tr.po                | 10 ----------
 src/backend/po/uk.po                |  5 -----
 src/backend/po/zh_CN.po             |  5 -----
 src/backend/storage/buffer/bufmgr.c | 11 ++++-------
 16 files changed, 4 insertions(+), 95 deletions(-)

diff --git a/src/backend/po/de.po b/src/backend/po/de.po
index 19f1a2abea0..3928f45b8e7 100644
--- a/src/backend/po/de.po
+++ b/src/backend/po/de.po
@@ -22809,11 +22809,6 @@ msgstr "kann Relation %s nicht auf über %u Blöcke erweitern"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "unerwartete Daten hinter Dateiende in Block %u von Relation %s"
 
-#: storage/buffer/bufmgr.c:2350
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Das scheint mit fehlerhaften Kernels vorzukommen; Sie sollten eine Systemaktualisierung in Betracht ziehen."
-
 #: storage/buffer/bufmgr.c:5653
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/es.po b/src/backend/po/es.po
index e2593b52271..8f8a0f7badc 100644
--- a/src/backend/po/es.po
+++ b/src/backend/po/es.po
@@ -22076,11 +22076,6 @@ msgstr "no se puede extender la relación %s más allá de %u bloques"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "datos inesperados más allá del EOF en el bloque %u de relación %s"
 
-#: storage/buffer/bufmgr.c:2350
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Esto parece ocurrir sólo con kernels defectuosos; considere actualizar su sistema."
-
 #: storage/buffer/bufmgr.c:5653
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/fr.po b/src/backend/po/fr.po
index eca2a961f98..c0b75a4e448 100644
--- a/src/backend/po/fr.po
+++ b/src/backend/po/fr.po
@@ -22664,13 +22664,6 @@ msgstr ""
 "données inattendues après la fin de fichier dans le bloc %u de la relation\n"
 "%s"
 
-#: storage/buffer/bufmgr.c:2000
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr ""
-"Ceci s'est déjà vu avec des noyaux buggés ; pensez à mettre à jour votre\n"
-"système."
-
 #: storage/buffer/bufmgr.c:5219
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/id.po b/src/backend/po/id.po
index d5d484132b7..50526f6476c 100644
--- a/src/backend/po/id.po
+++ b/src/backend/po/id.po
@@ -13439,11 +13439,6 @@ msgstr "tak dapat akses table sementara atau session yang lain."
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "data diatas EOF yang tidak diharapkan pada blok %u dari tabel %s"
 
-#: storage/buffer/bufmgr.c:387
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Hal ini sudah pernah terjadi pada kernel yang bermasalah, cobalah update sistem Anda."
-
 #: storage/buffer/bufmgr.c:474
 #, c-format
 msgid "invalid page in block %u of relation %s; zeroing out page"
diff --git a/src/backend/po/it.po b/src/backend/po/it.po
index 51b69431edd..61513d3442c 100644
--- a/src/backend/po/it.po
+++ b/src/backend/po/it.po
@@ -20844,11 +20844,6 @@ msgstr "impossibile estendere la relazione %s oltre %u blocchi"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "dati oltre fine file inaspettati nel blocco %u della relazione %s"
 
-#: storage/buffer/bufmgr.c:940
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Questo fenomeno è stato riportato con kernel difettosi: considera l'aggiornamento del tuo sistema."
-
 #: storage/buffer/bufmgr.c:1039
 #, c-format
 msgid "invalid page in block %u of relation %s; zeroing out page"
diff --git a/src/backend/po/ja.po b/src/backend/po/ja.po
index 5309f0ca14d..0152f10734f 100644
--- a/src/backend/po/ja.po
+++ b/src/backend/po/ja.po
@@ -22914,11 +22914,6 @@ msgstr "リレーション\"%s\"を%uブロックを超えて拡張できませ
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "リレーション %2$s の %1$u ブロック目で、EOF の先に想定外のデータを検出しました"
 
-#: storage/buffer/bufmgr.c:2775
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "これはカーネルの不具合で発生した模様です。システムの更新を検討してください。"
-
 #: storage/buffer/bufmgr.c:6115
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/ka.po b/src/backend/po/ka.po
index 23730e71818..922f552da44 100644
--- a/src/backend/po/ka.po
+++ b/src/backend/po/ka.po
@@ -22909,11 +22909,6 @@ msgstr ""
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr ""
 
-#: storage/buffer/bufmgr.c:2782
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr ""
-
 #: storage/buffer/bufmgr.c:6185
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/ko.po b/src/backend/po/ko.po
index d71eed4b6c0..da61bd1e2a6 100644
--- a/src/backend/po/ko.po
+++ b/src/backend/po/ko.po
@@ -24070,13 +24070,6 @@ msgstr "%s 릴레이션은 %u개 블록을 초과하여 확장할 수 없음"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "%u 블록(해당 릴레이션: %s)에 EOF 범위를 넘는 예기치 않은 데이터가 있음"
 
-#: storage/buffer/bufmgr.c:2350
-#, c-format
-msgid ""
-"This has been seen to occur with buggy kernels; consider updating your "
-"system."
-msgstr "이 문제는 커널의 문제로 알려졌습니다. 시스템을 업데이트하십시오."
-
 #: storage/buffer/bufmgr.c:5653
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/pl.po b/src/backend/po/pl.po
index 3ac9d0451c9..c2192aff41f 100644
--- a/src/backend/po/pl.po
+++ b/src/backend/po/pl.po
@@ -18435,11 +18435,6 @@ msgstr "nie można uzyskać dostępu do tabel tymczasowych innych sesji"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "nieoczekiwane dane za EOF w bloku %u relacji %s"
 
-#: storage/buffer/bufmgr.c:809
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Zaobserwowano takie zachowanie przy wadliwy jądrze; rozważ aktualizację systemu."
-
 #: storage/buffer/bufmgr.c:907
 #, c-format
 msgid "invalid page in block %u of relation %s; zeroing out page"
diff --git a/src/backend/po/pt_BR.po b/src/backend/po/pt_BR.po
index 21c2741e2bd..b9e87f34143 100644
--- a/src/backend/po/pt_BR.po
+++ b/src/backend/po/pt_BR.po
@@ -21786,11 +21786,6 @@ msgstr "não é possível estender a relação %s além de %u blocos"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "dado inesperado após EOF no bloco %u da relação %s"
 
-#: storage/buffer/bufmgr.c:2000
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Isso tem ocorrido com kernels contendo bugs; considere atualizar seu sistema."
-
 #: storage/buffer/bufmgr.c:5219
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/ru.po b/src/backend/po/ru.po
index f8e7152cd84..2ba17956a55 100644
--- a/src/backend/po/ru.po
+++ b/src/backend/po/ru.po
@@ -25027,15 +25027,6 @@ msgstr "не удалось увеличить отношение \"%s\" до б
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "неожиданные данные после EOF в блоке %u отношения %s"
 
-#: storage/buffer/bufmgr.c:2350
-#, c-format
-msgid ""
-"This has been seen to occur with buggy kernels; consider updating your "
-"system."
-msgstr ""
-"Эта ситуация может возникать из-за ошибок в ядре; возможно, вам следует "
-"обновить ОС."
-
 #: storage/buffer/bufmgr.c:5653
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/sv.po b/src/backend/po/sv.po
index db87d04a3c2..1c1c42a0826 100644
--- a/src/backend/po/sv.po
+++ b/src/backend/po/sv.po
@@ -22646,11 +22646,6 @@ msgstr "kan inte utöka relation %s utöver %u block"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "oväntad data efter EOF i block %u för relation %s"
 
-#: storage/buffer/bufmgr.c:2350
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Detta beteende har observerats med buggiga kärnor; fundera på att uppdatera ditt system."
-
 #: storage/buffer/bufmgr.c:5653
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/tr.po b/src/backend/po/tr.po
index b791e886b9f..fb22c5e2659 100644
--- a/src/backend/po/tr.po
+++ b/src/backend/po/tr.po
@@ -18914,16 +18914,6 @@ msgstr "diğer oturumların geçici tablolarına erişilemez"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "\"%2$s\" nesnesinin %1$u bloğunda dosya sonundan sonra beklenmeyen veri"
 
-#: storage/buffer/bufmgr.c:816
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Bu durum bazı eski çekirdeklerde meydana gelebilir. Yeni kernellerde bu düzeltilmiştir."
-
-#: storage/buffer/bufmgr.c:914
-#, fuzzy, c-format
-msgid "invalid page in block %u of relation %s; zeroing out page"
-msgstr "\"%2$s\" tablosunun %1$u bloğunda geçersiz sayfa başlığı; sayfa sıfırlanıyor"
-
 #: storage/buffer/bufmgr.c:4056
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/uk.po b/src/backend/po/uk.po
index 6c4c0add9ee..8c4be14519f 100644
--- a/src/backend/po/uk.po
+++ b/src/backend/po/uk.po
@@ -21997,11 +21997,6 @@ msgstr "не можна розширити відношення %s понад %u
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "неочікуванні дані після EOF в блоці %u відношення %s"
 
-#: storage/buffer/bufmgr.c:2350
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "Ця ситуація може виникати через помилки в ядрі; можливо, вам слід оновити вашу систему."
-
 #: storage/buffer/bufmgr.c:5653
 #, c-format
 msgid "could not write block %u of %s"
diff --git a/src/backend/po/zh_CN.po b/src/backend/po/zh_CN.po
index 574684d7757..22c92619d26 100644
--- a/src/backend/po/zh_CN.po
+++ b/src/backend/po/zh_CN.po
@@ -19235,11 +19235,6 @@ msgstr "无法访问其它会话的临时表"
 msgid "unexpected data beyond EOF in block %u of relation %s"
 msgstr "关系 \"%2$s\" 的块 %1$u 中的EOF后面出现未期望的数据"
 
-#: storage/buffer/bufmgr.c:816
-#, c-format
-msgid "This has been seen to occur with buggy kernels; consider updating your system."
-msgstr "这是由于内核缺陷所致；请考虑更新您的操作系统."
-
 #: storage/buffer/bufmgr.c:914
 #, c-format
 msgid "invalid page in block %u of relation %s; zeroing out page"
diff --git a/src/backend/storage/buffer/bufmgr.c b/src/backend/storage/buffer/bufmgr.c
index f93131a645e..4f4396df9aa 100644
--- a/src/backend/storage/buffer/bufmgr.c
+++ b/src/backend/storage/buffer/bufmgr.c
@@ -2743,11 +2743,9 @@ ExtendBufferedRelShared(BufferManagerRelation bmr,
 		 * because mdread doesn't complain about reads beyond EOF (when
 		 * zero_damaged_pages is ON) and so a previous attempt to read a block
 		 * beyond EOF could have left a "valid" zero-filled buffer.
-		 * Unfortunately, we have also seen this case occurring because of
-		 * buggy Linux kernels that sometimes return an lseek(SEEK_END) result
-		 * that doesn't account for a recent write. In that situation, the
-		 * pre-existing buffer would contain valid data that we don't want to
-		 * overwrite.  Since the legitimate cases should always have left a
+		 *
+		 * This has also been observed when relation was overwritten by external
+		 * process. Since the legitimate cases should always have left a
 		 * zero-filled buffer, complain if not PageIsNew.
 		 */
 		if (existing_id >= 0)
@@ -2778,8 +2776,7 @@ ExtendBufferedRelShared(BufferManagerRelation bmr,
 				ereport(ERROR,
 						(errmsg("unexpected data beyond EOF in block %u of relation %s",
 								existing_hdr->tag.blockNum,
-								relpath(bmr.smgr->smgr_rlocator, fork).str),
-						 errhint("This has been seen to occur with buggy kernels; consider updating your system.")));
+								relpath(bmr.smgr->smgr_rlocator, fork).str)));
 
 			/*
 			 * We *must* do smgr[zero]extend before succeeding, else the page
-- 
2.39.5

