Bug 55057

Summary: apt: Нехватка размера буфера
Product: Sisyphus Reporter: alxvmr <alekseevamo>
Component: aptAssignee: placeholder <placeholder>
Status: CLOSED FIXED QA Contact: qa-sisyphus
Severity: normal    
Priority: P5 CC: boyarsh, glebfm, imz, ldv, liannnix, placeholder, sin, vt
Version: unstable   
Hardware: x86_64   
OS: Linux   
Bug Depends on: 52837    
Bug Blocks:    
Attachments:
Description Flags
pkgpriorities файл none

Description alxvmr 2025-07-04 15:44:34 MSK
Created attachment 18938 [details]
pkgpriorities файл

Добрый день!
Столкнулись с проблемой при выполнении apt-get install с переопределенным файлом pkgpriorities - если объем одного из тегов в pkgpriorities больше 32КБ, то парсинг завершается ошибкой:

apt-get install --just-print -q "p7zip-" -o Dir::Etc::pkgpriorities="/home/SMB.BASEALT.RU/alekseevamo/Загрузки/-alt-packages-pkgpriorities.FWvUFAmIzxvc"

E: Невозможно прочитать пакетный файл /home/SMB.BASEALT.RU/alekseevamo/Загрузки/-alt-packages-pkgpriorities.FWvUFAmIzxvc (1)
E: нет данных в /home/SMB.BASEALT.RU/alekseevamo/Загрузки/-alt-packages-pkgpriorities.FWvUFAmIzxvc

Пример такого файла приложен.
Данную проблему решает увеличение буфера у pkgTagFile, патч:

From a8978ee862a67051c5f5d5a11c341eb36e871fe3 Mon Sep 17 00:00:00 2001
From: Maria Alexeeva <alxvmr@altlinux.org>
Date: Wed, 2 Jul 2025 20:47:49 +0400
Subject: [PATCH] tagfile: increase the buffer size from 32*1024 to 128*1024

---
 apt-pkg/tagfile.h | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/apt-pkg/tagfile.h b/apt-pkg/tagfile.h
index c084a853..2af96b81 100644
--- a/apt-pkg/tagfile.h
+++ b/apt-pkg/tagfile.h
@@ -80,7 +80,7 @@ class pkgTagFile
    inline unsigned long Offset() {return iOffset;}
    bool Jump(pkgTagSection &Tag,unsigned long Offset);
 
-   pkgTagFile(FileFd *F,unsigned long Size = 32*1024);
+   pkgTagFile(FileFd *F,unsigned long Size = 128*1024);
    ~pkgTagFile();
 };
 
-- 
2.42.4

Значение в 128КБ возникло из потребности исходной задачи про починку сноса половины системы в alterator-application-components - в pkgpriorities нужно сохранять все вручную установленные пакеты.
Comment 1 alxvmr 2025-07-07 16:15:15 MSK
Тестовая задача (Sisyphus): 388778
Comment 2 Repository Robot 2025-07-09 17:10:03 MSK
apt-0.5.15lorg2-alt97 -> sisyphus:

Wed Jul 02 2025 Maria Alexeeva <alxvmr@altlinux> 0.5.15lorg2-alt97
- Increased the pkgpriorities buffer size from 32*1024 to 128*1024 (Closes: #55057).