Después de `chown -R` git es súper lento

10

Tengo un proyecto GIT masivo con varios submódulos GIT dentro. Cambié recursivamente la propiedad ( chown -r) de rootmi usuario para cada archivo en mi proyecto.

Ahora, cualquier comando git tarda mucho tiempo en completarse y parece usar un 99% de CPU. ¿Cual es el problema?

yo hice sudo chown -R my_user my_project/

ACTUALIZAR

Esto parece no estar solo relacionado con GIT, otros comandos de terminal también toman mucho tiempo. topme muestra 100% de uso de git durante unos 15 segundos en lugar de los habituales 0-1 segundos.

lukas.pukenis
fuente
1
No es tu chown -rorden.
AB
@AB por favor elabore más.
lukas.pukenis
1
gitno le importa quién es el propietario de los archivos, siempre que pueda acceder a los archivos.
AB
3
Observe el resultado de topo htopy las actividades de E / S.
AB
1
Solo un tiro en la oscuridad: dijiste masivo ; tal vez antes de que haya guardado en caché los archivos que ahora, después del cambio de propiedad, ya no se ven como lo mismo ... o algo como nepomuk / akonadi / _updatedb_ está indexando todo como nuevo. Consulte con top htop...
Hastur

Respuestas:

12

Con el comando

sudo chown -R my_user my_project/

ha cambiado todos los archivos en un enorme repositorio (como usted dijo), por lo tanto, su indexador de archivos KDE / GNOME / Unity tiene mucho trabajo ahora. Dé tiempo al proceso para completar su trabajo. Ve a tomar un café ;)

Para ver lo que sucede desde una perspectiva de entrada / salida, instálelo a iotoptravés de:

sudo apt-get install iotop

y mira la salida de:

sudo iotop

AB
fuente
¿Por qué? gitsolo verifique los modos.
muru
Esa es probablemente la razón. Es el único en el que puedo pensar también. También me gusta el café, así que ya tengo uno hecho para mí :))
lukas.pukenis
@ lukas.pukenis Qué pasa con el café y top, htopla respuesta? ¿Quién está desperdiciando tus recursos? :-) ¡Recuerde que siempre puede excluir rutas del indexador de archivos y agregar nuevamente cuándo irá a comer o a dormir!
Hastur
@Hastur cuando escribo como git statustengo 100% de uso de CPU por 15 0..1segundos en lugar de segundos. La memoria no es un problema y la actividad de E / S es baja: /
lukas.pukenis
2
@ lukas.pukenis No debería afirmarlo tan fácilmente, sin duda como usted: si hay muchos otros procesos que están abriendo / bloqueando esos archivos (recuerde la palabra mágica masiva ), puede necesitar más tiempo que antes. Verifique y actualice quién está usando su HDD y su tiempo de CPU. Nadie puede encontrar desde aquí la respuesta y está por allá. Buena caza y café. Por cierto, si pausa / detiene el indexador y cuando da la orden es más rápido, encuentra a su culpable. :-) Buena caza y café ...
Hastur