# [BUG] emerge -UDpv world leeeeeeeeento! [OK]

## ProT-0-TypE

Non so perchè ma l'emerge -UDpv world è diventato leeeeeeentissimo!  a volte il " / " rimane pure fermo un paio di secondi...

[l'emerge -s invece sembra vada a velocità normali]

Non so se sia un caso ma ho notato che più aumentano le voci in /etc/portage/package.keywords più mi sembra lento...

C'è qualche collegamento tra le 2 cose?Last edited by ProT-0-TypE on Tue Jul 20, 2004 9:20 am; edited 3 times in total

----------

## randomaze

 *ProT-0-TypE wrote:*   

> Non so se sia un caso ma ho notato che più aumentano le voci in /etc/portage/package.keywords più mi sembra lento...
> 
> C'è qualche collegamento tra le 2 cose?

 

Potrebbe esserci... non so come sono implementate internamente certe cose.

Quante entry hai in quel file?

Hai provato a mettere un package.keywords vuoto per vedere se la situazione migliora?

/Edit: ho spostato il file ed effettivamente il miglioramento é enorme  :Sad: 

/Edit2:  uso portage 2.0.50-r9, qualcuno degli ~x86 nota lo stesso problema con il 2.0.51?

----------

## ProT-0-TypE

Ho provato a spostare il file e mettere nel make.conf "~x86" in modo da poter fare l'emerge -UDpv world e andava veloce per cui il problema è proprio quello...

Anche io Portage 2.0.50-r9

Randomaze confido nella tua esperienza per risolvere il problema  :Very Happy: 

----------

## fedeliallalinea

E' normale che sia lento anche a me lo fa. Se vuoi velocizzare emerge leggi questo tips https://forums.gentoo.org/viewtopic.php?t=159347

----------

## ProT-0-TypE

si ma io non intendo lento a compilare (che comunque è già normale), intendo lento nel vedere quali pacchetti installare! (cmq ottimo tip, lo sperimento subito  :Very Happy: )

Questo è l'emerge -UDpv world con il packages.keywords con 85 voci:

```
# time ACCEPT_KEYWORDS="~x86" emerge -UDvp world

real    9m27.445s

user    6m37.270s

sys     0m36.128s

```

e questo è l'emerge con il packages.keywords vuoto e con "~x86" inserita nel make.conf:

```
# time emerge -UDvp world

real    0m45.374s

user    0m25.063s

sys     0m3.297s

```

guarda la differenza...

----------

## fedeliallalinea

 *ProT-0-TypE wrote:*   

> si ma io non intendo lento a compilare (che comunque è già normale), intendo lento nel vedere quali pacchetti installare! (cmq ottimo tip, lo sperimento subito )

 

Si avevo capito. Anche il mio e' lento ma 9 minuti mi sembrano esagerati.

----------

## ProT-0-TypE

si infatti c'è una differenza assurda!  Comunque conta che avevo emule aperto (per tutti e 2 gli emerge) e che ho un pc vecchio (athlon 900).

Potresti ricordarmi la sintassi di package.keywords? magari sbaglio quella ed è per questo che è così lento

----------

## fedeliallalinea

Se la sbagli non dovrebbe funzionare comunque la sintassi e'

```
media-libs/mesa ~x86
```

----------

## ProT-0-TypE

si è giusta..

ufff devo trovare un modo per aggirare questa cosa..

----------

## Sparker

C'è un bug in bugzilla: https://bugs.gentoo.org/show_bug.cgi?id=41520

Sembra sia stato corretto nel portage 50-r3 ma non completamente. Sembra sia possibile risolvere facendo

 *Quote:*   

> 
> 
> I rm-ed the file and built a new /etc/portage/package.keywords. 
> 
> Identical contents. 
> ...

 

(non ho provato, ma mi sembra assurdo)

----------

## fedeliallalinea

 *Sparker wrote:*   

> (non ho provato, ma mi sembra assurdo)

 

Si anche a me sembra molto strano cosa cambia eliminare quel file per poi ricrearlo?

----------

## lopio

 *fedeliallalinea wrote:*   

> Si anche a me sembra molto strano cosa cambia eliminare quel file per poi ricrearlo?

 

..a meno che non ci siano finiti caratteri non printabili che danno fastidio........

----------

## mfkr79

Io in package.keywords ho una quarantina di voci.

Ho notato un leggero miglioramento di velocità nel trovare i pacchetti da installare, elencando, come consigliato, i pacchetti in ordine alfabetico. Prima per categoria, e poi, all'interno della categoria per nome pacchetto

```
app-cdr/arson ~x86

app-cdr/k3b ~x86

app-editors/nvu ~x86

app-emulation/wine ~x86

app-portage/guitoo ~x86

mail-client/mozilla-thunderbird ~x86

media-gfx/gimp ~x86

media-libs/alsa-lib ~x86

media-libs/alsa-oss ~x86

media-sound/alsa-driver ~x86

...
```

Questi i risultati di una veloce misurazione:

time emerge -pvuD world con circa 400 pacchetti installati, package.keywords da 40 voci e Overlay da circa 12 pacchetti

```
real    0m54.826s

user    0m34.259s

sys     0m2.634s
```

con ACCEPT_KEYWORDS="~x86" invece di package.keywords 

```
real    0m46.495s

user    0m35.625s

sys     0m2.479s
```

senza  ACCEPT_KEYWORDS="~x86" e senza package.keywords 

```
real    0m15.990s

user    0m12.078s

sys     0m1.784s
```

----------

## ProT-0-TypE

La mia versione del portage è la 2.0.50-r9, per cui il bug mi sa che non è stato risolto..

Per quanto riguarda eliminare il file e ricrearlo, l'ho fatto un bel paio di volte, ma non mi pare sia cambiato nulla...

Ora provo ad ordinarlo! (a proposito, non c'è qualche comando o script che lo faccia per me..?  :Razz: )

----------

## ProT-0-TypE

 *randomaze wrote:*   

> qualcuno degli ~x86 nota lo stesso problema con il 2.0.51?

 

C'è il portage 2.0.51?? Dove lo trovo?   :Surprised: 

Ho appena syncato ma nulla.. :'(

----------

## mfkr79

Non lo trovi ma c'é  :Very Happy:   E' hard masked...aggiungi una riga in /etc/portage/package.unmask

così: 

```
sys-apps/portage
```

Ora lo puoi emergere

Occhio che se è hard masked ci sarà un motivo, il codice non lo considereranno ancora affidabile...o ci sono dei problemi

 *Quote:*   

> # <xxx@gentoo.xxx> (11 Apr 2004)
> 
> # Internal testing phase
> 
> >=sys-apps/portage-2.0.51_pre1

 

Ora sono arrivati alla 2.0.51_pre13

----------

## ProT-0-TypE

beh a questo punto rimango al mio bel portage stabile con sto piccolo bug che mi fa perdere solo 9 minuti... (che poi non so se l'hanno risolto in quella versione..)

----------

## ProT-0-TypE

ho ordinato il file package.keywords (bastava usare sort..  :Very Happy: )

 time ACCEPT_KEYWORDS="~x86" emerge -UDpv world 

```
real    8m40.669s

user    6m31.920s

sys     0m35.507s

```

Leggerissimo miglioramento.. ma praticamente inutile...

----------

## mfkr79

Strano  :Rolling Eyes: 

Ho messo un po' in disordine il mio package.keywords, mischiando le voci e togliendo qualche riferimento alla categoria, così

```
...

net-wireless/madwifi-driver ~x86

xine-ui ~x86

media-video/xvid4conf ~x86

app-cdr/k3b ~x86

...
```

Ora impiego

```
real    2m22.935s

user    1m56.827s

sys     0m9.984s
```

Con il file in ordine impiegavo

```
real    0m54.826s 

user    0m34.259s 

sys     0m2.634s
```

Chissà se ci sono altri problemi...

Boh, prova a passare al nuovo profilo "default-x86-2004.2", a naso non c'entra molto, ma non si può mai dire...

----------

## ProT-0-TypE

Oddio ho guadagnato 1 minuto... che non è mica male... ma 8 minuti e mezzo rispetto al minutino che ci mette senza il package.keywords..

 *mfkr79 wrote:*   

> 
> 
> Boh, prova a passare al nuovo profilo "default-x86-2004.2", a naso non c'entra molto, ma non si può mai dire...

 

ovvero?   :Rolling Eyes: 

----------

## mfkr79

Aggiorni il sistema alla versione di Gentoo 2004.2

Come root

```
rm -f /etc/make.profile

ln -s /usr/portage/profiles/default-x86-2004.2 /etc/make.profile
```

L'ho sparata, non credo centri con il problema che hai...riprova un update world, boooh

La cosa strana è che io incasinando il file ho quasi triplicato il tempo necessario, tu sistemandolo hai guadagnato solo un minuto, ci mette sempre otto volte tanto   :Evil or Very Mad: 

EDIT: IDEA-->dai una pulita al world file, cioè elimina pacchetti che sono dipendenze di altri già presenti nel world (esempio scemo: se hai installato KDE, puoi togliere dal world, se ci sono, le QT e XFree, e magari pure altro).

Dato che con l'opzione -D cerca aggiornamenti anche per le dipendenze di un pacchetto, in questo modo dovrebbe velocizzarsi, non controllando più volte lo stesso pacchetto.

Forse usando package.keywords, ripetere un controllo del genere, è ancora più dannoso in termini di tempo.

E' solo un'ipotesi, potrebbe essere anche un delirio, se lo è, qualcuno me lo faccia notare   :Cool: 

----------

## ProT-0-TypE

 *mfkr79 wrote:*   

> Aggiorni il sistema alla versione di Gentoo 2004.2
> 
> 

 

Non è cambiato nulla

 *mfkr79 wrote:*   

> 
> 
> EDIT: IDEA-->dai una pulita al world file, cioè elimina pacchetti che sono dipendenze di altri già presenti nel world (esempio scemo: se hai installato KDE, puoi togliere dal world, se ci sono, le QT e XFree, e magari pure altro).
> 
> 

 

In effetti diminuendo le voci il tempo dell'emerge -UDpv world diminuisce. C'è un modo per sapere tutti i pacchetti che posso eliminare? (oltre che "a mano",nel senso, tolgo quello che potrebbe sembrare una dipendenza e poi provo..)

----------

## shanghai

Se per caso usate anche package.unmask, vale lo stesso discorso...

----------

## mfkr79

 *shanghai wrote:*   

> Se per caso usate anche package.unmask, vale lo stesso discorso...

 

@ ProT-0-TypE : ricapitoliamo

 Se hai syncato con mirror non ufficiali (tipo quello messo su dai tedeschi), cancella tutto il contenuto di /usr/portage e rifai un sync esclusivamente con un mirror ufficiale

 Se usi più di un overlay, cerca di unificarli tutti in un'unica locazione sul filesystem

 Cerca di dare una pulita a

world

package.keywords

package.unmask

eliminando le voci dipendenze di altre già presenti

Per scoprirlo, un modo potrebbe essere questo

```
qpkg -q "categoria"/"pacchetto-versione"
```

Esempio

```
qpkg -q x11-base/xfree-4.3.0-r6

x11-base/xfree-4.3.0-r6 *

DEPENDED ON BY:

        PyOpenGL-2.0.0.44

        xloadimage-4.1-r1

        xine-lib-1_rc4-r1

        mjpegtools-1.6.1.90-r2

        lineakd-0.7.2
```

significa che xfree è una dipendenza dei pacchetti elencati, ovvero i pacchetti elencati dipendono da xfree

----------

## randomaze

Ok, ho trovato il tempo di dedicare una decina di minuti al problema e ho trovato il mio "baco", ovvero avevo una linea che diceva semplicemente:

```
pacchetto  ~x86
```

modificata la linea aggiungendo la la categoria:

```
categoria/pacchetto  ~x86
```

il tempo dell' emerge -uDp world é passato da una 40a di secondi a una dozzina. Tuttavia ho notato un degrado "visibile" (circa un secondo) per ogni entry nel file... diciamo che due minuti per 85 voci sarebbe acettabile.

mfkr79, é corretto il voler eliminare le ridondanze, tuttavia se di un pacchetto   dipendenza vuoi la versione ~x86 lo devi esplicitare nel file, altrimenti cerca di metterti la x86 normale  :Wink: 

----------

## ProT-0-TypE

aaaahhh hai ragione randomaze!

anche io avevo una voce senza la categoria (per la precisione era il gcc..)

ora:

```
time emerge -UDpv world

real    3m54.788s

user    2m50.311s

sys     0m13.561s

```

dimezzato  :Very Happy: 

----------

