Hi,

Hmm, none of the changes we put into 3.0.11 should have any chance of doing
this. We didn't bump Djblets for this release, so it should be using the
same version as 3.0.10, so at least we can rule that out.

Some starter questions, just for info gathering:

1) What version of Review Board did you upgrade from?
2) What database are you using?
3) Can you verify that memcached is being used (Admin UI -> Cache
Statistics)
4) Are you using any SCM other than Subversion?

Christian

On Thu, Dec 13, 2018 at 8:35 AM pisymbol <pisym...@gmail.com> wrote:

> CentOS 7.6, latest everything including Djblets (1.0.8). RB was installed
> via pip.
>
> What happens is a developer gets a RB email, clicks the link, which causes
> several httpd processes to spike ~100% and just sit there forever:
>
> 16315 apache    20   0  579684 137944  11248 R  93.8  0.8   0:30.93 httpd
> 16316 apache    20   0  552804 111500  11172 R  93.8  0.7   1:22.86 httpd
>
> Box has 16GB of RAM allocated and 16GB of swap none of which is being used.
>
> On the developer's screen, I see that half of the diffs are still being
> loaded (the spinning arrow of death?).
>
> One of our developers suggested upgraded Djblets (my guess is he read the
> same thread I did) but it is at the latest as far as pip is concerned:
>
> [root@rboard reviewboard]# pip install --upgrade djblets
> Requirement already up-to-date: djblets in
> /usr/lib/python2.7/site-packages (1.0.8)
> Requirement already satisfied, skipping upgrade:
> django-pipeline<1.6.999,>=1.6.14 in /usr/lib/python2.7/site-packages (from
> djblets) (1.6.14)
> Requirement already satisfied, skipping upgrade: Django<1.10.999,>=1.6.11
> in /usr/lib/python2.7/site-packages (from djblets) (1.6.11)
> Requirement already satisfied, skipping upgrade: publicsuffix>=1.1 in
> /usr/lib/python2.7/site-packages (from djblets) (1.1.0)
> Requirement already satisfied, skipping upgrade: pytz in
> /usr/lib/python2.7/site-packages (from djblets) (2018.7)
> Requirement already satisfied, skipping upgrade: feedparser>=5.1.2 in
> /usr/lib/python2.7/site-packages (from djblets) (5.2.1)
> Requirement already satisfied, skipping upgrade: python-dateutil>=1.5 in
> /usr/lib/python2.7/site-packages (from djblets) (2.7.5)
> Requirement already satisfied, skipping upgrade: pillowfight in
> /usr/lib/python2.7/site-packages (from djblets) (0.3)
> Requirement already satisfied, skipping upgrade: dnspython>=1.14.0 in
> /usr/lib/python2.7/site-packages (from djblets) (1.16.0)
> Requirement already satisfied, skipping upgrade: futures>=2.1.3;
> python_version < "3" in /usr/lib/python2.7/site-packages (from
> django-pipeline<1.6.999,>=1.6.14->djblets) (3.2.0)
> Requirement already satisfied, skipping upgrade: six>=1.5 in
> /usr/lib/python2.7/site-packages (from python-dateutil>=1.5->djblets)
> (1.12.0)
> Requirement already satisfied, skipping upgrade: Pillow>=3.4.2 in
> /usr/lib64/python2.7/site-packages (from pillowfight->djblets) (5.3.0)
>
> What's interesting is that this review has two pages worth of diffs and if
> I click on the first page, all the diffs get generated. But if I click the
> second one, it causes Apache grief.
>
> Debug logs show:
>
> 2018-12-13 16:29:29,869 - DEBUG - None - alexs -
> /api/review-requests/229/diff-context/ - root - Generating diff viewer page
> for filediff id 131
> 2018-12-13 16:29:29,983 - DEBUG - None - alexs -
> /api/review-requests/229/diff-context/ - root - Begin: Generating diff file
> info for diffset id 131
> 2018-12-13 16:29:29,988 - DEBUG - None - alexs -
> /api/review-requests/229/diff-context/ - root - End: Generating diff file
> info for diffset id 131
> 2018-12-13 16:29:29,988 - DEBUG - None - alexs -
> /api/review-requests/229/diff-context/ - root - Generating diff file info
> for diffset id 131 took 0.004751 seconds
> 2018-12-13 16:29:30,069 - DEBUG - None - alexs -
> /api/review-requests/229/diff-context/ - root - Done generating diff viewer
> page for filediff id 131
> 2018-12-13 16:29:30,692 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - Begin: Generating diff file info for
> diffset id 131, filediff 784
> 2018-12-13 16:29:30,702 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - End: Generating diff file info for
> diffset id 131, filediff 784
> 2018-12-13 16:29:30,702 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - Generating diff file info for diffset
> id 131, filediff 784 took 0.010163 seconds
> 2018-12-13 16:29:30,704 - DEBUG -  - djblets.cache.backend - Cache miss
> for key
> diffviewer/diff_file_fragment.html-19-1-784-collapsed-highlighting-en-1544644925.
> 2018-12-13 16:29:30,705 - DEBUG -  - djblets.cache.backend - Cache miss
> for key diff-sidebyside-hl-784-en.
> 2018-12-13 16:29:30,741 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - Begin: Patching file
> /trunk/ie/include/crawl_jrpc.j
> 2018-12-13 16:29:30,756 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - End: Patching file
> /trunk/ie/include/crawl_jrpc.j
> 2018-12-13 16:29:30,756 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - Patching file
> /trunk/ie/include/crawl_jrpc.j took 0.014740 seconds
> 2018-12-13 16:29:30,757 - DEBUG - None - alexs -
> /r/229/diff/1/fragment/784/ - root - Begin: Generating diff chunks for
> self.filediff id 784 (/trunk/ie/include/crawl_jrpc.j)
>
> How can I debug this? strace shows no syscalls like httpd is in complete
> deadlock. Is this simply a bug?
>
> -aps
>
> --
> 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
> "Review Board Community" 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.
>


-- 
Christian Hammond
President/CEO of Beanbag <https://www.beanbaginc.com/>
Makers of Review Board <https://www.reviewboard.org/>

-- 
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 
"Review Board Community" 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