And again, running pkg update, I had to patch the headerlist too... I cherry picked what I could see from the workaround attached to http://defect.opensolaris.org/bz/show_bug.cgi?id=12713
Here's my complete diff: kaos@ganesha:/usr/lib/python2.6/vendor-packages/pkg/client/transport$ diff engine.py.org engine.py 767a768,770 > headerstr = headerstr.encode( > "ascii", > "xmlcharrefreplace") 773a777,779 > headerstr = headerstr.encode( > "ascii", > "xmlcharrefreplace") 779c785 < hdl.setopt(pycurl.URL, treq.url) --- > hdl.setopt(pycurl.URL, str(treq.url)) kaos@ganesha:/usr/lib/python2.6/vendor-packages/pkg/client/transport$ 2012/5/9 Andreas Stenius <[email protected]>: > OK, I said I wasn't going to dig into the source, but since I found > such an easy and specific fix, I had a go with it... and it WORKS! yay > :) > > root@ganesha:/usr/lib/python2.6/vendor-packages/pkg/client/transport# > pkg history > START OPERATION CLIENT OUTCOME > [...] > 2012-04-13T21:11:48 refresh-publishers pkg Succeeded > 2012-04-13T21:11:48 install pkg Succeeded > 2012-04-13T21:11:49 rebuild-image-catalogs pkg Succeeded > 2012-04-13T21:16:25 install pkg Succeeded > ... > 2012-04-16T20:19:17 install pkg Succeeded > 2012-05-08T16:55:00 refresh-publishers pkg Failed > 2012-05-08T16:55:26 refresh-publishers pkg Failed > 2012-05-08T18:52:36 refresh-publishers pkg Failed > 2012-05-08T20:12:58 refresh-publishers pkg Failed > 2012-05-09T09:33:31 refresh-publishers pkg Failed > 2012-05-09T09:50:55 refresh-publishers pkg Failed > 2012-05-09T10:09:20 refresh-publishers pkg > Succeeded # applied patch to engine.py (see below) > 2012-05-09T10:09:38 rebuild-image-catalogs pkg Succeeded > root@ganesha:/usr/lib/python2.6/vendor-packages/pkg/client/transport# > > Here's the diff: > > root@ganesha:/usr/lib/python2.6/vendor-packages/pkg/client/transport# > diff engine.py.org engine.py > 779c779 > < hdl.setopt(pycurl.URL, treq.url) > --- >> hdl.setopt(pycurl.URL, str(treq.url)) > > As noted, this may be an ugly work-around and perhaps not suitable for > a long term solution, but for me as end-user... whatever makes it work > is worth it. > > //Andreas > > 2012/5/9 Andreas Stenius <[email protected]>: >> Found some more on this: >> http://defect.opensolaris.org/bz/show_bug.cgi?id=13334 >> and, >> http://sourceforge.net/tracker/?func=detail&aid=1831680&group_id=28236&atid=392777 >> >> Since there seems to be an easy work-around (by wrapping the passed >> url with a str() call), I'll have a go with that. >> (I do have the _speedups.so in the simplejson vendor package for python 2.6). >> >> Perhaps this should've been on the oi-dev list? adding it to cc. >> >> 2012/5/9 Andreas Stenius <[email protected]>: >>> A somewhat dated report, in a completely different environment, but >>> still seems to strike some similarities that look right: >>> http://java.net/jira/browse/UPDATECENTER2-1697?focusedCommentId=62748&page=com.atlassian.jira.plugin.system.issuetabpanels%3Acomment-tabpanel#action_62748 >>> >>> I'll try and re-set my publisher list and see if it makes a >>> difference... as I'm not about to dig through pkg or pycurl sources at >>> this time. >>> >>> //Andreas >>> >>> 2012/5/8 Andreas Stenius <[email protected]>: >>>> Hi, >>>> >>>> It's been a few weeks since I used pkg on this box, but it worked last >>>> time I used it. >>>> >>>> Now, all I get is some internal error. Any ideas what may be wrong >>>> (and preferably, what to do about it)? >>>> >>>> >>>> kaos@ganesha:~$ sudo pkg refresh >>>> Password: >>>> Refreshing catalog 1/3 openindiana.orgTraceback (most recent call last): >>>> File "/bin/pkg", line 5954, in handle_errors >>>> __ret = func(*args, **kwargs) >>>> File "/bin/pkg", line 5932, in main_func >>>> return func(api_inst, pargs) >>>> File "/bin/pkg", line 3757, in publisher_refresh >>>> return __refresh(api_inst, pargs, full_refresh=full_refresh) >>>> File "/bin/pkg", line 3729, in __refresh >>>> immediate=True, pubs=pubs) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/api.py", line >>>> 2319, in refresh >>>> pubs=pubs, immediate=immediate) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/api.py", line >>>> 2343, in __refresh >>>> progtrack=self.__progresstracker) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/image.py", line >>>> 3196, in refresh_publishers >>>> immediate=immediate): >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/publisher.py", >>>> line 1860, in refresh >>>> return self.__refresh(True, True) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/publisher.py", >>>> line 1796, in __refresh >>>> full_refresh, immediate, mismatched, origin) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/publisher.py", >>>> line 1751, in __refresh_origin >>>> full_refresh, immediate, mismatched, repo) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/publisher.py", >>>> line 1670, in __refresh_v1 >>>> revalidate=revalidate, alt_repo=repo) >>>> File >>>> "/usr/lib/python2.6/vendor-packages/pkg/client/transport/transport.py", >>>> line 432, in wrapper >>>> return f(instance, *fargs, **f_kwargs) >>>> File >>>> "/usr/lib/python2.6/vendor-packages/pkg/client/transport/transport.py", >>>> line 815, in get_catalog1 >>>> revalidate=revalidate) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/transport/repo.py", >>>> line 453, in get_catalog1 >>>> self._engine.run() >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/transport/engine.py", >>>> line 573, in run >>>> self.__setup_handle(eh, t) >>>> File "/usr/lib/python2.6/vendor-packages/pkg/client/transport/engine.py", >>>> line 779, in __setup_handle >>>> hdl.setopt(pycurl.URL, treq.url) >>>> TypeError: invalid arguments to setopt >>>> >>>> >>>> pkg: This is an internal error in pkg(5) version 5d2771134f21+. Please >>>> log a >>>> Service Request about this issue including the information above and this >>>> message. >>>> >>>> kaos@ganesha:~$ uname -a >>>> SunOS ganesha 5.11 oi_151a3 i86pc i386 i86pc Solaris >>>> >>>> >>>> Thanks in advance, >>>> Andreas _______________________________________________ oi-dev mailing list [email protected] http://openindiana.org/mailman/listinfo/oi-dev
