Filed PR: http://code.google.com/p/reviewboard/issues/detail?id=2024.
Much appreciated.

Regards,
--Michael

On Mon, Mar 14, 2011 at 7:58 PM, Christian Hammond <chip...@chipx86.com> wrote:
> You know, it's funny this hasn't been reported before, because the logic is
> wrong. It's perfectly fine to have a changenum per repository, but we're not
> factoring in the repository in that one query. Can you please file a bug
> against this and we'll get a fix out? I can put together a nightly build
> with this fix.
>
> Christian
>
> --
> Christian Hammond - chip...@chipx86.com
> Review Board - http://www.reviewboard.org
> VMware, Inc. - http://www.vmware.com
>
>
> On Mon, Mar 14, 2011 at 4:51 PM, Michael Milbrath <m.milbr...@gmail.com>
> wrote:
>>
>> I've seen a couple errors similar to the following occur in the last
>> couple of weeks.  We recently migrated from 1.0.9 to 1.5.4.  I found
>> the referenced PR adding the concurrency manager but wonder if it is
>> possible the database got in a somewhat invalid state prior to this
>> change?   Is there something that I can validate in the database to
>> ensure it is consistent or process to fix?
>>
>> REF
>> http://code.google.com/p/reviewboard/issues/detail?id=705
>>
>> ...
>> 2011-03-14 09:28:19,338 - ERROR - Exception thrown for user XXXXXXXXX
>> at https://XXXXXXXX/r/new/
>>
>> get() returned more than one ReviewRequest -- it returned 4! Lookup
>> parameters were {'changenum': 18332}
>> Traceback (most recent call last):
>>  File
>> "/build/toolchain/noarch/django-1.2.5/lib/python2.6/site-packages/django/core/handlers/base.py",
>> line 100, in get_response
>>    response = callback(request, *callback_args, **callback_kwargs)
>>  File
>> "/build/toolchain/noarch/Djblets-0.6.7/lib/python2.6/site-packages/Djblets-0.6.7-py2.6.egg/djblets/auth/util.py",
>> line 46, in _checklogin
>>    return view_func(request, *args, **kwargs)
>>  File
>> "/build/toolchain/noarch/reviewboard-1.5.4.1/ReviewBoard-1.5.4.1-py2.6.egg/reviewboard/reviews/views.py",
>> line 68, in new_review_request
>>    parent_diff_file=request.FILES.get('parent_diff_path'))
>>  File
>> "/build/toolchain/noarch/reviewboard-1.5.4.1/ReviewBoard-1.5.4.1-py2.6.egg/reviewboard/reviews/forms.py",
>> line 166, in create
>>    review_request = ReviewRequest.objects.get(changenum=changenum)
>>  File
>> "/build/toolchain/noarch/django-1.2.5/lib/python2.6/site-packages/django/db/models/manager.py",
>> line 132, in get
>>    return self.get_query_set().get(*args, **kwargs)
>>  File
>> "/build/toolchain/noarch/django-1.2.5/lib/python2.6/site-packages/django/db/models/query.py",
>> line 349, in get
>>    % (self.model._meta.object_name, num, kwargs))
>> MultipleObjectsReturned: get() returned more than one ReviewRequest --
>> it returned 4! Lookup parameters were {'changenum': 18332}
>>
>> mysql> select id, submitter_id, repository_id, changenum from
>> reviews_reviewrequest where changenum = 18332;
>> +--------+--------------+---------------+-----------+
>> | id     | submitter_id | repository_id | changenum |
>> +--------+--------------+---------------+-----------+
>> |  18284 |           28 |             2 |     18332 |
>> |  24555 |         1158 |            10 |     18332 |
>> | 216485 |         3484 |            14 |     18332 |
>> | 128542 |          767 |            25 |     18332 |
>> +--------+--------------+---------------+-----------+
>>
>> --
>> Michael D. Milbrath
>> E-mail: m.milbr...@gmail.com
>>
>> --
>> Want to help the Review Board project? Donate today at
>> http://www.reviewboard.org/donate/
>> Happy user? Let us know at http://www.reviewboard.org/users/
>> -~----------~----~----~----~------~----~------~--~---
>> To unsubscribe from this group, send email to
>> reviewboard+unsubscr...@googlegroups.com
>> For more options, visit this group at
>> http://groups.google.com/group/reviewboard?hl=en
>



-- 
Michael D. Milbrath
E-mail: m.milbr...@gmail.com

-- 
Want to help the Review Board project? Donate today at 
http://www.reviewboard.org/donate/
Happy user? Let us know at http://www.reviewboard.org/users/
-~----------~----~----~----~------~----~------~--~---
To unsubscribe from this group, send email to 
reviewboard+unsubscr...@googlegroups.com
For more options, visit this group at 
http://groups.google.com/group/reviewboard?hl=en

Reply via email to