[OpenIndiana-discuss] image-update causes pkg to crash with "File exists" error for a man page

Gary Gendel gary at genashor.com
Wed Jan 12 11:56:44 UTC 2011


Ok!  I got around this problem by hacking the pkg code (legacy.py) to 
recover from this problem.  What happens is that it crashes when it 
tries to create a hard link and the file already exists.  So I trapped 
this exception, removed the file and did the hard link.

Now I've got a oi_148 installation.  However, it seems to have some issues.

1) Both cpus are being pounded continuously.  mpstat shows > 90% on one 
and > 80% on the other used by "sys".  ps doesn't show any process using 
more than 0.5% total cpu!
2) Something changed with libusb.  I can't get apcupsd running because 
it crashes in this library in a strchr() call when initializing the usb 
connection.  It shows a SIGSEGV permission problem.

I had to go back to 134b because I can't find who is using the cpus.

Gary

On 1/11/11 9:39 AM, Gary Gendel wrote:
> I've been struggling to update from snv_134b to OpenIndiana, but both 
> 147 and 148 fail when trying to install SUNWxwpnm, the X-Window man 
> pages.
>
> The crash comes because a file already exists.  I don't know what file 
> so I don't know how to get around it.  Any ideas?
>
> ----------------------
> The Boot Environment oi_147 failed to be updated. A snapshot was taken 
> before the failed attempt and has been restored so no changes have 
> been made to oi_147.
> pkg: An unexpected error happened during install: [Errno 17] File exists
> Traceback (most recent call last):
>   File "/usr/bin/pkg", line 3796, in handle_errors
>     __ret = func(*args, **kwargs)
>   File "/usr/bin/pkg", line 3773, in main_func
>     return func(img, pargs)
>   File "/usr/bin/pkg", line 1303, in install
>     raise_ActionExecutionError=False)
>   File "/usr/bin/pkg", line 865, in __api_execute_plan
>     api_inst.execute_plan()
>   File "/usr/lib/python2.6/vendor-packages/pkg/client/api.py", line 
> 674, in execute_plan
>     self.__img.imageplan.execute()
>   File "/usr/lib/python2.6/vendor-packages/pkg/client/imageplan.py", 
> line 1084, in execute
>     p.execute_install(src, dest)
>   File "/usr/lib/python2.6/vendor-packages/pkg/client/pkgplan.py", 
> line 301, in execute_install
>     dest.install(self, src)
>   File "/usr/lib/python2.6/vendor-packages/pkg/actions/legacy.py", 
> line 107, in install
>     os.link(pkginfo, linkfile)
> OSError: [Errno 17] File exists
> ----------------------------
>
> I've filed a pkg bug because this situation shouldn't cause a crash, 
> but I don't see how do get past this without manually blowing away the 
> man pages before upgrading.
>




More information about the OpenIndiana-discuss mailing list