View previous topic :: View next topic |
Author |
Message |
Letharion Veteran
Joined: 13 Jun 2005 Posts: 1344 Location: Sweden
|
Posted: Mon Jul 20, 2020 6:25 am Post subject: emerge gets stuck on every sync |
|
|
A few days ago eix-sync would start getting stuck on every sync.
emerge --sync finishes fine, and the eix-sync also updates packages, so I think it's when eix tries to generate it's "diff" at the end that something goes wrong.
I've tried using strace to see if I can work out what's happening, but I have no idea how to interpret the output:
Code: | $ sudo strace -p 4973
strace: Process 4973 attached
wait4(-1, |
Last edited by Letharion on Wed Aug 05, 2020 3:57 pm; edited 1 time in total |
|
Back to top |
|
|
SpiderPigLoki Tux's lil' helper
Joined: 22 Aug 2008 Posts: 90
|
Posted: Sat Aug 01, 2020 9:42 am Post subject: |
|
|
Well I think a test (maybe even dirty workaround) would be:
Code: |
emerge --sync
eix-update
|
AFAIK eix-update is nothing else then emerge --sync && eix-update.
First the portage tree gets downloaded / updated / synced and then eix updates it's own database with available, installed, use-flags, bla bla bla.
Apart from that maybe try running:
|
|
Back to top |
|
|
fturco Veteran
Joined: 08 Dec 2010 Posts: 1181 Location: Italy
|
Posted: Sat Aug 01, 2020 10:39 am Post subject: |
|
|
SpiderPigLoki wrote: | AFAIK eix-update is nothing else then emerge --sync && eix-update. |
If that were the case, it would be an infinite recursive command... |
|
Back to top |
|
|
toralf Developer
Joined: 01 Feb 2004 Posts: 3922 Location: Hamburg
|
Posted: Sat Aug 01, 2020 11:30 am Post subject: |
|
|
Waht's about Code: | rm /var/cache/eix/portage.eix | ? Or do you have few trees at NFS shares ? |
|
Back to top |
|
|
Tony0945 Watchman
Joined: 25 Jul 2006 Posts: 5127 Location: Illinois, USA
|
Posted: Sat Aug 01, 2020 2:01 pm Post subject: |
|
|
Code: | $ ls -lh /var/cache/eix/portage.eix
-rw-rw-r-- 1 portage portage 15M Jul 31 19:38 /var/cache/eix/portage.eix
| Wow! That's big. I'm having long delays too. |
|
Back to top |
|
|
toralf Developer
Joined: 01 Feb 2004 Posts: 3922 Location: Hamburg
|
Posted: Sat Aug 01, 2020 2:08 pm Post subject: |
|
|
Tony0945 wrote: | Code: | $ ls -lh /var/cache/eix/portage.eix
-rw-rw-r-- 1 portage portage 15M Jul 31 19:38 /var/cache/eix/portage.eix
| Wow! That's big. I'm having long delays too. | Nope, 15 M is common IMO. |
|
Back to top |
|
|
Tony0945 Watchman
Joined: 25 Jul 2006 Posts: 5127 Location: Illinois, USA
|
Posted: Sat Aug 01, 2020 2:28 pm Post subject: |
|
|
Would it help to filter out dev-haskell and dev-ros that seem to take a lot of time and I have zero interest in? I like it that the tree has over 10,000 packages, but not if it materially adds to processing time. |
|
Back to top |
|
|
mv Watchman
Joined: 20 Apr 2005 Posts: 6747
|
Posted: Sun Aug 02, 2020 4:59 am Post subject: |
|
|
Letharion, if you have no special configuration for eix-sync, it does the following: - It copies /var/cache/eix/portage.eix to /var/cahce/eix/previous.eix
- It calls emerge --sync
- It calls eix-update
- It calls eix-diff
Try to do this steps manually and check whether it is really eix-diff that hangs. An strace directly on eix-diff might be more useful.
You might also try the eix-update and eix-diff with /etc/eix-sync.conf, /etc/eixrc, ~/.eixrc renamed to something "harmless" and with an empty environment (env -i "command ....") to make sure that it is not a special configuration or environment variable of yours which is interfering.
Tony0945: What exactly is slow with eix? The eix-diff itself? For the size, it should help to set DEP=false but then you will not have the dependency information, of course. But for the speed it will not help much except for eix-diff. The same thing for filtering categories. If you use eix from the mv overlay, you have more possibilities for optimization which might or might not help a lot. |
|
Back to top |
|
|
Tony0945 Watchman
Joined: 25 Jul 2006 Posts: 5127 Location: Illinois, USA
|
Posted: Sun Aug 02, 2020 1:37 pm Post subject: |
|
|
mv wrote: | Tony0945: What exactly is slow with eix? The eix-diff itself? For the size, it should help to set DEP=false but then you will not have the dependency information, of course. But for the speed it will not help much except for eix-diff. The same thing for filtering categories. If you use eix from the mv overlay, you have more possibilities for optimization which might or might not help a lot. |
Not bad at all on this quiet Sunday morning. I usually sync Friday or Saturday night, probably the worst times. I think my complaint is with eix-diff which usually has interminable lines of stuff about dev-ros and dev-haskell. I think once it was dev-robots (?). Probably those were undergoing major overhauls, but several weeks in a row?
Anyway, here are my times and I'm surprised there is so little difference between the the web and the LAN.
Code: | On the server (bulldozer) syncing over the web
emerge --sync
real 0m57.634s
user 0m20.596s
sys 0m2.062s
eix-update
real 0m3.678s
user 0m3.444s
sys 0m0.230s
eix-diff
real 0m0.996s
user 0m0.953s
sys 0m0.040s
On the k10 syncing from the server over the LAN
emerge --sync
real 0m39.830s
user 0m26.211s
sys 0m3.057s
eix-update
real 0m22.483s
user 0m3.268s
sys 0m1.372s
eix-diff
real 0m1.227s
user 0m0.658s
sys 0m0.120s
|
|
|
Back to top |
|
|
Letharion Veteran
Joined: 13 Jun 2005 Posts: 1344 Location: Sweden
|
Posted: Mon Aug 03, 2020 6:22 pm Post subject: |
|
|
Ok, since I have no special eix config, I'll use
Code: | $ sudo bash -c "cp /var/cache/eix/portage.eix /var/cache/eix/previous.eix && emerge --sync && eix-update && eix-diff" |
To sync next time, and we'll see what happens. |
|
Back to top |
|
|
Letharion Veteran
Joined: 13 Jun 2005 Posts: 1344 Location: Sweden
|
Posted: Wed Aug 05, 2020 3:58 pm Post subject: |
|
|
I know have this process tree:
Code: | 24091 pts/1 S+ 0:00 | \_ sudo bash -c cp /var/cache/eix/portage.eix /var/cache/eix/previous.eix && emerge --sync && eix-update && eix-diff
24092 pts/1 S+ 0:00 | \_ bash -c cp /var/cache/eix/portage.eix /var/cache/eix/previous.eix && emerge --sync && eix-update && eix-diff
24094 pts/1 S+ 0:00 | \_ /usr/bin/python3.8 -b /usr/lib/python-exec/python3.8/emerge --sync
24290 pts/1 S+ 0:00 | \_ /usr/bin/python3.8 -b /usr/lib/python-exec/python3.8/emerge --sync |
So it appears eix isn't involved at all, and emerge --sync on it's own just happened to work when I tried it.
The last output is:
Code: | === Sync completed for gentoo
|
but then nothing happens.
Code: | $ sudo strace -p 24290
strace: Process 24290 attached
futex(0x7f31e196d930, FUTEX_WAIT_PRIVATE, 2, NULL |
|
|
Back to top |
|
|
|