Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 186579 - net-fs/nfs-utils fails to merge on AMD64 - chown OverflowError: signed integer is greater than maximum
Summary: net-fs/nfs-utils fails to merge on AMD64 - chown OverflowError: signed intege...
Status: RESOLVED WONTFIX
Alias: None
Product: Portage Development
Classification: Unclassified
Component: Core (show other bugs)
Hardware: AMD64 Linux
: High normal
Assignee: Portage team
URL: http://pastebin.com/f29ad7e7c
Whiteboard:
Keywords:
Depends on:
Blocks:
 
Reported: 2007-07-25 12:13 UTC by Endre Szabo
Modified: 2007-07-31 08:56 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
output of: emerge --info (emergeinfo.txt,8.46 KB, text/plain)
2007-07-25 12:29 UTC, Endre Szabo
Details
raise the exception for debugging purposes (debug.patch,348 bytes, patch)
2007-07-28 00:00 UTC, Zac Medico
Details | Diff
merge with patch applied (usrlibdebug.txt,1.83 KB, text/plain)
2007-07-28 10:21 UTC, Endre Szabo
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Endre Szabo 2007-07-25 12:13:49 UTC
after successful compilation nfs-utils fails to merge to the root with the following message:

>>> /usr/lib/nfs/rmtab
--- /usr/lib/nfs/sm/
>>> /usr/lib/nfs/sm/.keep_net-fs_nfs-utils-0
--- /usr/lib/nfs/sm.bak/
>>> /usr/lib/nfs/sm.bak/.keep_net-fs_nfs-utils-0
!!! Failed to chown/chmod/unlink in movefile()
!!! /usr/lib/nfs/state
!!! signed integer is greater than maximum

For more details see the URL provided.

Reproducible: Always

Steps to Reproduce:
1. Try to merge nfs-utils with the command "emerge nfs-utils
".
2. Happens automatically with every combination of use flags.

Actual Results:  
>>> /usr/lib/nfs/rmtab
--- /usr/lib/nfs/sm/
>>> /usr/lib/nfs/sm/.keep_net-fs_nfs-utils-0
--- /usr/lib/nfs/sm.bak/
>>> /usr/lib/nfs/sm.bak/.keep_net-fs_nfs-utils-0
!!! Failed to chown/chmod/unlink in movefile()
!!! /usr/lib/nfs/state
!!! signed integer is greater than maximum
 
srvkoz08 ~ # date && ls -l /usr/lib/nfs/sm.bak/.keep_net-fs_nfs-utils-0 /usr/lib/nfs/state
Wed Jul 25 13:59:20 CEST 2007
-rw-r--r-- 1 root root 0 Jul 25 13:58 /usr/lib/nfs/sm.bak/.keep_net-fs_nfs-utils-0
-rw-rw-rw- 1 root root 0 Jul 25 13:58 /usr/lib/nfs/state


Expected Results:  
>>> Regenerating /etc/ld.so.cache...


portage tree is up to date and there are no packages need updating. not even with --newuse.
Comment 1 Endre Szabo 2007-07-25 12:15:39 UTC
This is my first gentoo bugreport so i'm sorry for this weird description :)
Thnaks in advance
Comment 2 Jakub Moc (RETIRED) gentoo-dev 2007-07-25 12:18:43 UTC
emerge --info please.
Comment 3 Endre Szabo 2007-07-25 12:29:54 UTC
Created attachment 125970 [details]
output of: emerge --info

Sorry, here it is :)
Comment 4 Zac Medico gentoo-dev 2007-07-28 00:00:54 UTC
Created attachment 126200 [details, diff]
raise the exception for debugging purposes

What filesystem type do you have for /usr/lib/nfs/?  This patch will give some more information about the exact failure.  If you save it as /tmp/debug.patch then it can be applied as follows:

patch /usr/lib/portage/pym/portage.py < /tmp/debug.patch

Please post the output that is shown if you try to install nfs-utils with that patch applied.
Comment 5 Endre Szabo 2007-07-28 10:21:49 UTC
Created attachment 126210 [details]
merge with patch applied
Comment 6 Endre Szabo 2007-07-28 10:38:30 UTC
> What filesystem type do you have for /usr/lib/nfs/?
It is an ext3.
mkfs'd with default options.
Comment 7 Zac Medico gentoo-dev 2007-07-28 21:28:35 UTC
(In reply to comment #5)
>     os.chown(dest,sstat[stat.ST_UID],sstat[stat.ST_GID])
> OverflowError: signed integer is greater than maximum

It looks like this python bug:

https://sourceforge.net/tracker/?func=detail&atid=105470&aid=1747858&group_id=5470

In your case, the call that's triggering it is chown('/usr/lib/nfs/state', nobody, root).  Do you have the "nobody" user listed in /etc/passwd with uid 65534?
Comment 8 Endre Szabo 2007-07-29 15:12:24 UTC
> It looks like this python bug:


> In your case, the call that's triggering it is chown('/usr/lib/nfs/state',
> nobody, root).  Do you have the "nobody" user listed in /etc/passwd with uid
> 65534?
Ah!

That must be the problem as nobody has uid 4294967294.

nobody:x:4294967294:65534:nobody:/:/bin/false

I guess this is a default uid on 64bit systems as I didn't change it.
Comment 9 Zac Medico gentoo-dev 2007-07-30 00:55:39 UTC
(In reply to comment #8)
> I guess this is a default uid on 64bit systems as I didn't change it. 

That doesn't look normal.  I suggest that you change it to 65534.  Something like this will change the uid on all of the files for you:

find / -mount -uid 4294967294 -print0 | xargs -0 chown 65534
Comment 10 SpanKY gentoo-dev 2007-07-30 09:49:28 UTC
the /etc/passwd and /etc/group files are exactly the same for all architectures and "nobody" has always been 65534
Comment 11 Zac Medico gentoo-dev 2007-07-31 06:15:57 UTC
I guess we'll just wait for this to get fixed in python upstream.
Comment 12 Endre Szabo 2007-07-31 08:56:37 UTC
(In reply to comment #9)
> (In reply to comment #8)
> > I guess this is a default uid on 64bit systems as I didn't change it. 
> 
> That doesn't look normal.  I suggest that you change it to 65534.  Something
> like this will change the uid on all of the files for you:
> 
> find / -mount -uid 4294967294 -print0 | xargs -0 chown 65534
> 

Yes, changing the nobody uid to 65534 solved the problem.

Thanks guys:

>>> net-fs/nfs-utils-1.0.12 merged.