Summary: | поднять размеры внутренних буферов для поддержки репозитория autoimports. | ||||||
---|---|---|---|---|---|---|---|
Product: | Sisyphus | Reporter: | viy <viy> | ||||
Component: | apt | Assignee: | placeholder <placeholder> | ||||
Status: | CLOSED FIXED | QA Contact: | qa-sisyphus | ||||
Severity: | normal | ||||||
Priority: | P3 | CC: | boyarsh, enp, evg, glebfm, icesik, ildar, imz, ldv, mike, placeholder | ||||
Version: | unstable | ||||||
Hardware: | all | ||||||
OS: | Linux | ||||||
Bug Depends on: | |||||||
Bug Blocks: | 30482 | ||||||
Attachments: |
|
Description
viy
2013-10-24 00:29:03 MSK
Число версий превысило предельное значение 2^16-1 (unsigned short ID в структуре pkgCache::Version), без увеличения типа ID (со сменой soname у libapt) проблема не решается. В качестве альтернативы могу предложить отказаться от идеи подключать все мыслимые репозитории одновременно. там по другому никак - mgaimport не замкнутый репозиторий,
его unmets можно удоволетворить только подключением одновременно
и Сизифа, и autoimports. Это и есть минимальное необходимое число репозиториев :(
меньше некуда.
> В качестве альтернативы могу предложить
> отказаться от идеи подключать все мыслимые репозитории одновременно.
не подходит - не удастся сформировать сборочное окружение из-за unmets :(
со сменой soname у libapt - не так страшно? если заранее,
легче грабли оттестировать и выполоть.
кроме того, в mgaimport всего 1000 пакетов. Это означает, что еще чуть-чуть и простое подключение autoimports к Сизифу будет ронять apt :( (В ответ на комментарий №3) > кроме того, в mgaimport всего 1000 пакетов. > Это означает, что еще чуть-чуть и простое подключение autoimports > к Сизифу будет ронять apt :( так как есть запас, то не обязательно ее выкладывать сразу в Сизиф, главное, чтобы была официальная сборка. Я ее установлю на всех виртуальных машинах, и это позволит мне продолжить работу. А в Сизиф можно и немного позже. Можно попробовать "поменять внутренности" таким образом: --- a/apt/apt-pkg/pkgcache.h +++ b/apt/apt-pkg/pkgcache.h @@ -278,8 +278,8 @@ struct pkgCache::Version map_ptrloc Size; // These are the .deb size map_ptrloc InstalledSize; - unsigned short Hash; - unsigned short ID; + unsigned long Hash; + unsigned int ID; unsigned char Priority; }; Возможно, после этого закончится еще какой-нибудь ресурс. Created attachment 5981 [details]
hsh.log.i586
Установил в host систему (autoextra, x86_64) патченный apt, только там на всякий сделал int Hash вместо long Hash. - unsigned short Hash; - unsigned short ID; + unsigned int Hash; + unsigned int ID; 5 минут, полет нормальный. Можно в production ;) а когда будет официальный commit с soname change? ABI ведь таки изменился, например, у меня лоально synaptic стал segfault'иться. (В ответ на комментарий №8) > а когда будет официальный commit с soname change? Плюсую. Очень неудобно зоопарк поддерживать. (In reply to comment #9) > (В ответ на комментарий №8) > > а когда будет официальный commit с soname change? > > Плюсую. Очень неудобно зоопарк поддерживать. Кто будет тестировать (авто?)пересобранные пакеты? (В ответ на комментарий №10) > Кто будет тестировать (авто?)пересобранные пакеты? не совсем понял вопрос. Имеется в виду autoimports? (In reply to comment #11) > (В ответ на комментарий №10) > > Кто будет тестировать (авто?)пересобранные пакеты? > > не совсем понял вопрос. Имеется в виду autoimports? Допустим, сейчас подзадание, в котором apt с увеличенными целочисленными типами в этой структурке и увеличенным soname, соберется. Что дальше? apt с этим патчем у мены уже полгода работает, проблем быть не должно. (In reply to comment #13) > apt с этим патчем у мены уже полгода работает, проблем быть не должно. Этому патчу еще и 5 месяцев не исполнилось, какие там полгода. :) В task #116138 хорошо бы добавить несколько пакетов. добавил, можно перезапускать: 400:dir=/people/viy/packages/python-module-apt.git 400:tag_name=0.5.15cnc6-alt5.1 400:tag_id=b217272cd80d6e3c1a416deac3cc6aed3ae4cdd3 400:tag_author=Igor Vlasenko (ALT Linux Sisyphus) <viy@altlinux.org> 400:userid=viy 500:dir=/people/viy/packages/synaptic.git 500:tag_name=0.58-alt14.1 500:tag_id=cebe93fcd5204c910281c692d335864395edccc0 500:tag_author=Igor Vlasenko (ALT Linux Sisyphus) <viy@altlinux.org> 500:userid=viy 600:dir=/people/viy/packages/aptitude.git 600:tag_name=0.4.5-alt6.1 600:tag_id=fa35846df6d94c4f0a89571496694b51d69bda5e 600:tag_author=Igor Vlasenko (ALT Linux Sisyphus) <viy@altlinux.org> 600:userid=viy 700:dir=/people/viy/packages/apt-indicator.git 700:tag_name=0.2.10-alt1.1 700:tag_id=df81fd0a8a6011251f567ae324aed8544cb1f901 700:tag_author=Igor Vlasenko (ALT Linux Sisyphus) <viy@altlinux.org> 700:userid=viy apt-0.5.15lorg2-alt44 -> sisyphus: * Tue Mar 11 2014 Dmitry V. Levin <ldv@altlinux> 0.5.15lorg2-alt44 - libapt: enlarged integer types in pkgCache::Version (closes: #29514). Спасибо! |