[OmniOS-discuss] Internal pkg error during a test r151010 to r151014 upgrade
Chris Siebenmann
cks at cs.toronto.edu
Mon Apr 6 19:38:27 UTC 2015
I just tried a test upgrade of a (VMWare) virtual machine from r151010
to r151014 and got an internal Python error in pkg(5). The machine
is freshly installed with the latest r151010 package sets and our
internal customizations, which include additional packages from
both http://pkg.omniti.com/omniti-ms/ and pkgsrc packages from
http://pkgsrc.joyent.com/.
(This is how our existing OmniOS r151010 machines are installed, so
I wanted an exact duplicate of them to test the upgrade for obvious
reasons.)
Upgrade steps I did, taken basically intact from
http://omnios.omniti.com/wiki.php/Upgrade_to_r151014:
- make a snapshot of the current r151010 boot environment, just in case
- update publisher:
/usr/bin/pkg unset-publisher omnios
/usr/bin/pkg set-publisher -P --set-property signature-policy=require-signatures -g http://pkg.omniti.com/omnios/r151014/ omnios
- try initial upgrade, which complained:
/usr/bin/pkg update --be-name=omnios-cslab-r151014 entire at 11,5.11-0.151014
Creating Plan |
pkg update: No matching version of entire can be installed:
Reject: pkg://omnios/entire@11,5.11-0.151014:20150402T192159Z
Reason: This version is excluded by installed incorporation pkg://ms.omniti.com/omniti/system/storage/smartmontools@6.2,5.11-0.151010:20140523T190549Z
- remove the smartmontools package for now:
pkg uninstall smartmontools
- rerun the identical 'pkg update' command, which died:
# /usr/bin/pkg update --be-name=omnios-cslab-r151014 entire at 11,5.11-0.151014
Packages to remove: 1
Packages to install: 8
Packages to update: 395
Mediators to change: 1
Create boot environment: Yes
Create backup boot environment: No
DOWNLOAD PKGS FILES XFER (MB)
Completed 404/404 16625/16625 454.3/454.3
PHASE ACTIONS
Removal Phase 4230/4230
Install Phase 5392/5392
Update Phase 3141/16901Action upgrade failed for 'opt/gcc-4.8.1/lib/amd64/libstdc++.so.6.0.18-gdb.py' (pkg://omnios/developer/gcc48):
TypeError: 'NoneType' object is not callable
The running system has not been modified. Modifications were only made to a clone of the running system. This clone is mounted at /tmp/tmp_nIZ1J should you wish to inspect it.
pkg: An unexpected error happened during update: 'NoneType' object is not callable
Traceback (most recent call last):
File "/usr/bin/pkg", line 5954, in handle_errors
__ret = func(*args, **kwargs)
File "/usr/bin/pkg", line 5937, in main_func
pargs=pargs, **opts)
File "/usr/bin/pkg", line 2323, in update
reject_list=reject_pats, update_index=update_index)
File "/usr/bin/pkg", line 1583, in __api_op
ret_code = __api_execute_plan(_op, _api_inst)
File "/usr/bin/pkg", line 1269, in __api_execute_plan
api_inst.execute_plan()
File "/usr/lib/python2.6/vendor-packages/pkg/client/api.py", line 2156, in execute_plan
self._img.imageplan.execute()
File "/usr/lib/python2.6/vendor-packages/pkg/client/imageplan.py", line 2963, in execute
p.execute_update(src, dest)
File "/usr/lib/python2.6/vendor-packages/pkg/client/pkgplan.py", line 441, in execute_update
dest.install(self, src)
File "/usr/lib/python2.6/vendor-packages/pkg/actions/file.py", line 193, in install
stream = self.data()
TypeError: 'NoneType' object is not callable
pkg: This is an internal error in pkg(5) version 1382373239. Please log a
Service Request about this issue including the information above and this
message.
----
I have this virtual machine still running at the moment so I can poke
around inside the mounted clone for people. Although I haven't tested
yet for obvious reasons, I also have a virtual-disk snapshot from before
I started my test so I expect this is going to be fully reproducable.
If people want I can make our customization scripts available so people
can see exactly what we do to our poor OmniOS r151010 systems. (Some of
the bits are probably slightly gory and improper.)
- cks
More information about the OmniOS-discuss
mailing list