hi Sir
I've find the root cause.
thanks for you kindly help

this error caused by one of our admin add an empty value to Host accouting
property
Fixed by remove this host service account




2017-12-22 8:39 GMT+08:00 Jianchun Lu <yourfor...@gmail.com>:

> Hi Christian,
> We're install reviewboard with 2.5.9 version, Apache2 and memcached.
> there is no upgraded currently.  Reviewboad server Ubuntu 14.04.2 LTS
> with Linux 3.16.0-30-generic
>
> Only affect to repo add/view/modify. new review request is OK.
>
>
> Error when I click any repo ( dashboard--admin --Repositories) with error
> below
>
> Expected output :
>
>
> Environment:
>
> Request Method: GET
>
> Request URL: http://reviewboard.***.com/admin/db/scmtools/repository/3/ 
> <http://reviewboard.56qq.com/admin/db/scmtools/repository/3/>
>
> Django Version: 1.6.11
>
> Python Version: 2.7.6
>
> Installed Applications:
>
> [u'django.contrib.admin',
>
>  u'django.contrib.auth',
>
>  u'django.contrib.contenttypes',
>
>  u'django.contrib.sites',
>
>  u'django.contrib.sessions',
>
>  u'django.contrib.staticfiles',
>
>  u'djblets',
>
>  u'djblets.configforms',
>
>  u'djblets.datagrid',
>
>  u'djblets.extensions',
>
>  u'djblets.feedview',
>
>  u'djblets.gravatars',
>
>  u'djblets.log',
>
>  u'djblets.pipeline',
>
>  u'djblets.siteconfig',
>
>  u'djblets.util',
>
>  u'haystack',
>
>  u'pipeline',
>
>  u'reviewboard',
>
>  u'reviewboard.accounts',
>
>  u'reviewboard.admin',
>
>  u'reviewboard.attachments',
>
>  u'reviewboard.changedescs',
>
>  u'reviewboard.diffviewer',
>
>  u'reviewboard.extensions',
>
>  u'reviewboard.hostingsvcs',
>
>  u'reviewboard.notifications',
>
>  u'reviewboard.reviews',
>
>  u'reviewboard.scmtools',
>
>  u'reviewboard.site',
>
>  u'reviewboard.webapi',
>
>  u'django_evolution']
>
> Installed Middleware:
>
> [u'django.middleware.gzip.GZipMiddleware',
>
>  u'reviewboard.admin.middleware.InitReviewBoardMiddleware',
>
>  u'django.middleware.clickjacking.XFrameOptionsMiddleware',
>
>  u'django.middleware.common.CommonMiddleware',
>
>  u'django.middleware.doc.XViewMiddleware',
>
>  u'django.middleware.http.ConditionalGetMiddleware',
>
>  u'django.middleware.locale.LocaleMiddleware',
>
>  u'django.contrib.sessions.middleware.SessionMiddleware',
>
>  u'django.contrib.auth.middleware.AuthenticationMiddleware',
>
>  u'django.contrib.messages.middleware.MessageMiddleware',
>
>  u'djblets.siteconfig.middleware.SettingsMiddleware',
>
>  u'reviewboard.admin.middleware.LoadSettingsMiddleware',
>
>  u'djblets.extensions.middleware.ExtensionsMiddleware',
>
>  u'djblets.log.middleware.LoggingMiddleware',
>
>  u'reviewboard.accounts.middleware.TimezoneMiddleware',
>
>  u'reviewboard.admin.middleware.CheckUpdatesRequiredMiddleware',
>
>  u'reviewboard.admin.middleware.X509AuthMiddleware',
>
>  u'reviewboard.site.middleware.LocalSiteMiddleware',
>
>  u'djblets.extensions.middleware.ExtensionsMiddlewareRunner',
>
>  u'reviewboard.admin.middleware.ExtraExceptionInfoMiddleware']
>
> Traceback:
>
> File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py" in 
> get_response
>
>   112.                     response = wrapped_callback(request,
>
>
>
> *callback_args, callback_kwargs)File 
> "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/options.py" in 
> wrapper465. return self.admin_site.admin_view(view)(*args, kwargs)File 
> "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in 
> _wrapped_view99. response = view_func(request, *args,
>
> *kwargs)File 
> "/usr/local/lib/python2.7/dist-packages/django/views/decorators/cache.py" in 
> _wrapped_view_func52. response = view_func(request, *args, *kwargs)
>
> File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/sites.py" 
> in inner
>
>   198.             return view(request,
>
>
>
> *args, kwargs)File 
> "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in 
> _wrapper29. return bound_func(*args, kwargs)File 
> "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in 
> _wrapped_view99. response = view_func(request, *args,
>
> *kwargs)File 
> "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py" in 
> bound_func25. return func(self, *args2, *kwargs2)
>
> File "/usr/local/lib/python2.7/dist-packages/django/db/transaction.py" in 
> inner
>
>   371.                 return func(*args, **kwargs)
>
> File "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/options.py" 
> in change_view
>
>   1270.             form = ModelForm(instance=obj)
>
> File "/usr/local/lib/python2.7/dist-packages/reviewboard/scmtools/forms.py" 
> in *init*
>
>   297.                                                hosting_accounts)
>
> File "/usr/local/lib/python2.7/dist-packages/reviewboard/scmtools/forms.py" 
> in _get_hosting_service_info
>
>   471.                 if account.service_name == hosting_service.id
>
> File 
> "/usr/local/lib/python2.7/dist-packages/reviewboard/hostingsvcs/models.py" in 
> is_authorized
>
>   54.             return service.is_authorized()
>
> File 
> "/usr/local/lib/python2.7/dist-packages/reviewboard/hostingsvcs/gitlab.py" in 
> is_authorized
>
>   279.         return 'private_token' in self.account.data
>
> Exception Type: TypeError at /admin/db/scmtools/repository/3/
>
> Exception Value: argument of type 'NoneType' is not iterable
>
>
> thanks!
>
>
> On Friday, December 22, 2017 at 4:02:13 AM UTC+8, Christian Hammond wrote:
>>
>> Hi,
>>
>> Can you provide more info about your install? What version of Review
>> Board are you using? Did you just recently upgrade? What’s the repro case?
>>
>> Christian
>>
>>
>> On Thu, Dec 21, 2017 at 08:19 Jianchun Lu <yourf...@gmail.com> wrote:
>>
>>> Hi Sir,
>>>
>>>
>>> 2017-12-21 09:39:58,086 - ERROR - None - admin -
>>> /admin/db/scmtools/repository/227/ - Exception thrown for user admin at
>>> http://reviewboard.***.com/admin/db/scmtools/repository/227/
>>>
>>> argument of type 'NoneType' is not iterable
>>> Traceback (most recent call last):
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py",
>>> line 112, in get_response
>>>     response = wrapped_callback(request, *callback_args,
>>> **callback_kwargs)
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/options.py",
>>> line 465, in wrapper
>>>     return self.admin_site.admin_view(view)(*args, **kwargs)
>>>   File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py",
>>> line 99, in _wrapped_view
>>>     response = view_func(request, *args, **kwargs)
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/django/views/decorators/cache.py",
>>> line 52, in _wrapped_view_func
>>>     response = view_func(request, *args, **kwargs)
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/sites.py",
>>> line 198, in inner
>>>     return view(request, *args, **kwargs)
>>>   File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py",
>>> line 29, in _wrapper
>>>     return bound_func(*args, **kwargs)
>>>   File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py",
>>> line 99, in _wrapped_view
>>>     response = view_func(request, *args, **kwargs)
>>>   File "/usr/local/lib/python2.7/dist-packages/django/utils/decorators.py",
>>> line 25, in bound_func
>>>     return func(self, *args2, **kwargs2)
>>>   File "/usr/local/lib/python2.7/dist-packages/django/db/transaction.py",
>>> line 371, in inner
>>>     return func(*args, **kwargs)
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/django/contrib/admin/options.py",
>>> line 1270, in change_view
>>>     form = ModelForm(instance=obj)
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/reviewboard/scmtools/forms.py",
>>> line 297, in __init__
>>>     hosting_accounts)
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/reviewboard/scmtools/forms.py",
>>> line 471, in _get_hosting_service_info
>>>     if account.service_name == hosting_service.id
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/reviewboard/hostingsvcs/models.py",
>>> line 54, in is_authorized
>>>     return service.is_authorized()
>>>   File 
>>> "/usr/local/lib/python2.7/dist-packages/reviewboard/hostingsvcs/gitlab.py",
>>> line 279, in is_authorized
>>>     return 'private_token' in self.account.data
>>> TypeError: argument of type 'NoneType' is not iterable
>>>
>>>
>>>
>>> --
>>> Supercharge your Review Board with Power Pack:
>>> https://www.reviewboard.org/powerpack/
>>> Want us to host Review Board for you? Check out RBCommons:
>>> https://rbcommons.com/
>>> Happy user? Let us know! https://www.reviewboard.org/users/
>>> ---
>>> You received this message because you are subscribed to the Google
>>> Groups "reviewboard" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to reviewboard...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>> --
>> --
>> Christian Hammond
>> President/CEO of Beanbag
>> Makers of Review Board
>>
> --
> Supercharge your Review Board with Power Pack:
> https://www.reviewboard.org/powerpack/
> Want us to host Review Board for you? Check out RBCommons:
> https://rbcommons.com/
> Happy user? Let us know! https://www.reviewboard.org/users/
> ---
> You received this message because you are subscribed to a topic in the
> Google Groups "reviewboard" group.
> To unsubscribe from this topic, visit https://groups.google.com/d/
> topic/reviewboard/f8sufa8PfKQ/unsubscribe.
> To unsubscribe from this group and all its topics, send an email to
> reviewboard+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
Supercharge your Review Board with Power Pack: 
https://www.reviewboard.org/powerpack/
Want us to host Review Board for you? Check out RBCommons: 
https://rbcommons.com/
Happy user? Let us know! https://www.reviewboard.org/users/
--- 
You received this message because you are subscribed to the Google Groups 
"reviewboard" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to reviewboard+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to