🚀 go-pugleaf

RetroBBS NetNews Server

Inspired by RockSolid Light RIP Retro Guy

Thread View: pl.comp.os.linux.debian
7 messages
7 total messages Started by Michal Kosek Thu, 23 Oct 2003 15:29
dpkg
#147
Author: Michal Kosek
Date: Thu, 23 Oct 2003 15:29
53 lines
3075 bytes
Hej!

Nie wiem jak wy, ale mi się wydaje, że dpkg to kawał naprawdę
kiepskiego softu. Braku jakiegokolwiek sensownego query, kiepsko
przemyślane parametry i chory sposób prezentacji danych. Najbardziej
dla mnie denerwującą rzeczą jest szybkość - kilkudziesięciosekundowe
czekanie w sytuacji, gdy instalujemy wiele pakietów jest naprawdę
niemiłe.

Zastanawiałem się jak poprawić ten stan, i doszedłem do paru wniosków:

- baza available to jakaś zaszłość - w zasadzie nikt i nic z tego nie
korzysta. I nawet nie powinien - tym jakie są potencjalnie dostępne
pakiety powinno się zajmować narzędzie wyższego rzędu tzn. apt.

- ciężko sobie wyobrazić coś bardziej nieskalowanego niż jeden
ogromniasty plik status, na dokładkę przeszukiwany wielokrotnie(!)
przez głupie dpkg. Aby nie tworzyć jakichś binarnych plików i
niekompatybilnych rozwiązań, najlepiej zrobić rzecz najprostszą - rozbić
plik status na wiele plików [package].status, dzięki czemu będziemy
mieli bardzo szybki dostęp do statusu każdego pakietu.

- trzeba zindeksować zawartość plików *.list, bo grepowanie ich przy
obecnej ilości pakietów trwa zbyt długo (pomijając, że autorzy dpkg
zadbali, aby programi robił jeszcze kilka niepotrzebnych rzeczy, żeby
sromotnie przegrać w czasach nawet z grepem). A, proszę nic nie mówić
o dlocate, to jest obejście problemu, nie rozwiązanie.

- jak już rozbijemy bazę na tyle pliczków, to warto by dorobić jakąś
(opcjonalną) możliwość scalenia ich w jeden duży plik - żeby nie
zmuszać ludzi do marnowania miejsca na dysku...

Na razie załatwiłem dwa pierwsze punkty. Wywaliłem z kodu dpkg
wszystkie odwołania do bazy available (każąc mu w paru miejscach
korzystać z bazy apta) i podzieliłem pliki status. Na resztę jakoś
nie starczyło czasu i chęci :) Efekty, jeśli chodzi o szybkość, są
zauważalne, przynajmniej u mnie:

http://nh.pl/~michau/proj/dpkg/time.txt

Sam patch jest oczywiście tutaj:

http://nh.pl/~michau/proj/dpkg/

Parę maili na debian-dpkg nt. patcha:

http://42.pl/url/i1

-- 
michau@
  Oh no I've set too much / I haven't set enough
  I thought that I straced you sleeping / I thought that I straced you run
  I think I thought I saw core dumped [ R.A.M., "Loosing my revision" ]
Re: dpkg
#148
Author: Miroslaw Kwasniak
Date: Thu, 23 Oct 2003 17:23
15 lines
1310 bytes
Michal Kosek <michaupiszenanewsy@nowa-huta.krakow.pl> wrote:
> Na razie załatwiłem dwa pierwsze punkty. Wywaliłem z kodu dpkg
> wszystkie odwołania do bazy available (każąc mu w paru miejscach
> korzystać z bazy apta) i podzieliłem pliki status. Na resztę jakoś
> nie starczyło czasu i chęci :) Efekty, jeśli chodzi o szybkość, są
> zauważalne, przynajmniej u mnie:

Fajnie!

A czy wiesz, jak z wielkością pamięci? Bo ja żeby upgrejdować mój serwerek
(20M RAM), muszę zatrzymać wszystkie usługi, a i tak mam 3-5 min / pakiet i
20-30MB na swapie :(

-- 
MCSE (Minesweeper Consultant and Solitaire Expert)
Re: dpkg
#150
Author: Krzysztof Krzyżaniak
Date: Thu, 23 Oct 2003 17:27
36 lines
2553 bytes
Pewnego dnia, a było to Thu, 23 Oct 2003 15:29:03 +0000 (UTC), przyszła do mnie
wiadomość z adresu <michaupiszenanewsy@nowa-huta.krakow.pl> i powiedziała:

> Hej!
> 
> Nie wiem jak wy, ale mi się wydaje, że dpkg to kawał naprawdę
> kiepskiego softu. Braku jakiegokolwiek sensownego query, kiepsko
> przemyślane parametry i chory sposób prezentacji danych. Najbardziej
> dla mnie denerwującą rzeczą jest szybkość - kilkudziesięciosekundowe
> czekanie w sytuacji, gdy instalujemy wiele pakietów jest naprawdę
> niemiłe.
> 
> Zastanawiałem się jak poprawić ten stan, i doszedłem do paru wniosków:
> 
> - baza available to jakaś zaszłość - w zasadzie nikt i nic z tego nie
> korzysta. I nawet nie powinien - tym jakie są potencjalnie dostępne
> pakiety powinno się zajmować narzędzie wyższego rzędu tzn. apt.
> 
> - ciężko sobie wyobrazić coś bardziej nieskalowanego niż jeden
> ogromniasty plik status, na dokładkę przeszukiwany wielokrotnie(!)
> przez głupie dpkg. Aby nie tworzyć jakichś binarnych plików i
> niekompatybilnych rozwiązań, najlepiej zrobić rzecz najprostszą - rozbić
> plik status na wiele plików [package].status, dzięki czemu będziemy
> mieli bardzo szybki dostęp do statusu każdego pakietu.

O, jak ci się uda kampania to będę Ci się kłaniał na ulicy :-) dpkg
jest niestety obarczone błędem zaszłości historycznych i
kompatybilności wstecz. W zasadzie cała para obecnie idzie na
rozbudowanie narzędzi aptopodobnych bo poprawianie dpkg już sobie
większość odpuściła ;-)

  eloy
-- 
-------e-l-o-y-----------e-l-o-y-@-t-r-a-n-s-i-l-v-a-n-i-a-.-e-u-.-o-r-g------

             jeżeli nam zabraknie sił  zostaną jeszcze morze i wiatr
Re: dpkg
#151
Author: Miroslaw Kwasniak
Date: Thu, 23 Oct 2003 17:36
9 lines
987 bytes
Krzysztof Krzyżaniak <eloy@pawnhearts.eu.org> wrote:
> W zasadzie cała para obecnie idzie na
> rozbudowanie narzędzi aptopodobnych bo poprawianie dpkg już sobie
> większość odpuściła ;-)

Ale przecież apt-get woła dpkg

-- 
MCSE (Minesweeper Consultant and Solitaire Expert)
Re: dpkg
#152
Author: Krzysztof Krzyżaniak
Date: Thu, 23 Oct 2003 17:42
17 lines
1522 bytes
Pewnego dnia, a było to 23 Oct 2003 17:36:22 GMT, przyszła do mnie
wiadomość z adresu <pisz_do_mnie_na__mirek.kwasniak@dionizos.zind.ikem.pwr.wroc.pl> i powiedziała:

> Krzysztof Krzyżaniak <eloy@pawnhearts.eu.org> wrote:
>> W zasadzie cała para obecnie idzie na
>> rozbudowanie narzędzi aptopodobnych bo poprawianie dpkg już sobie
>> większość odpuściła ;-)
> 
> Ale przecież apt-get woła dpkg

Jasne, ale już narzędzia pomocnicze (np. apt-cache) niekoniecznie.

  eloy
-- 
-------e-l-o-y-----------e-l-o-y-@-t-r-a-n-s-i-l-v-a-n-i-a-.-e-u-.-o-r-g------

             jeżeli nam zabraknie sił  zostaną jeszcze morze i wiatr
Re: dpkg
#149
Author: Michal Kosek
Date: Tue, 28 Oct 2003 11:55
27 lines
2052 bytes
Miroslaw Kwasniak <pisz_do_mnie_na__mirek.kwasniak@dionizos.zind.ikem.pwr.wroc.pl> wrote:
> Michal Kosek <michaupiszenanewsy@nowa-huta.krakow.pl> wrote:
>> Efekty, jeśli chodzi o szybkość, są
>> zauważalne, przynajmniej u mnie:
> 
> Fajnie!
> 
> A czy wiesz, jak z wielkością pamięci? Bo ja żeby upgrejdować mój serwerek
> (20M RAM), muszę zatrzymać wszystkie usługi, a i tak mam 3-5 min / pakiet i
> 20-30MB na swapie :(

W sumie nie pisałem tego z myślą o zmniejszeniu zapotrzebowania na
pamięć, ale wychodzi na to, że jej zużycie też się powinno drastycznie
zmniejszyć. Rozbicie pliku status powoduje, że operacja na pakiecie
XXX powoduje załadowanie do pamięci tylko informacji o nim z pliku
XXX.status, a nie informacji o wszystkich pakietach, jak to teraz ma
miejsce.

Najlepiej podmień dpkg i daj znać jakie są efekty. Jak chcesz, mogę
wystawić binarne pakiety (z sidem i sarge nie ma problemu, w woodym
jest dpkg 1.9, musiałbym sprawdzić, czy patch działa bez modyfikacji).

-- 
michau@
  We don't need no fragmentation / We don't need no traffic control
  All in all it's just another rule in the firewall
							(Ping Flood)
Re: dpkg
#153
Author: Michal Kosek
Date: Tue, 28 Oct 2003 12:23
28 lines
2191 bytes
Krzysztof Krzyżaniak <eloy@pawnhearts.eu.org> wrote:
> O, jak ci się uda kampania to będę Ci się kłaniał na ulicy :-)

Oj niestety chyba nie zasłużę na ten zaszczyt, już jakieś pół roku
temu poruszyłem ten temat, i odzew był minimalny (http://42.pl/url/i1).

> dpkg
> jest niestety obarczone błędem zaszłości historycznych i
> kompatybilności wstecz. W zasadzie cała para obecnie idzie na
> rozbudowanie narzędzi aptopodobnych bo poprawianie dpkg już sobie
> większość odpuściła ;-)

No i to chyba jest błąd, bo apt działa nienajgorzej, a dpkg nadal mieli
i mieli pakiety przy każdej instalacji.

Mam też nieco inny pomysł, mianowicie sportowanie rpma (co się sprowadza
do modyfikacji, żeby natywnie obsługiwał pliki .deb i napisania
wrappera emulującego zachowanie dpkg). Bądź co bądź zgodne z ideą
Debiana jest dawanie wyboru odnośnie środowisk i demonów, dlaczego więc
nie pozwolić na zmianę menadżera pakietów? Mam jednak świadomość, że
rzucając taką propozycję zostałbym niechybnie zlinczowany, postanowiłem
więc zacząć od czegoś mniej kontrowersyjnego :)

-- 
michau@
  "Do you think," said a Woodpecker who had been busy making a hole in the
  table, "that there might be a problem with the name `UNIX?' I mean, it
  does sort of suggest being less than a man." [ "Alice in UNIX Land" ]
Thread Navigation

This is a paginated view of messages in the thread with full content displayed inline.

Messages are displayed in chronological order, with the original post highlighted in green.

Use pagination controls to navigate through all messages in large threads.

Back to All Threads