4562: Review board 2.5.13.1 does not work with diffs from Bazaar 2.7.0dev1

ondrej

What version are you running?

2.5.13.1

What's the URL of the page containing the problem?

What steps will reproduce the problem?

  1. I create a diff in bazaar as bzr diff --old=xxx > diff.file
  2. I try to upload it to review board but it stays in "loading" status
  3. Still loading and loading

What is the expected output? What do you see instead?

To upload the diff to review board

What operating system are you using? What browser?

Please provide any additional information below.

So far, we were using review board 2.0.18 and everything worked without problems. Strangely, some diffs can still be uploaded, but some cannot. The differences are minimal. I am appending a diff that does not get uploaded (but worked in 2.0.18).

=== modified file 'imis/imd/definitions/data_types_IMM.xml'
--- imis/imd/definitions/data_types_IMM.xml	 revid:osluciak@dev-laptop1.intern.robart.cc-20170627070057-1zvk4c9vwwkn7z9r
+++ imis/imd/definitions/data_types_IMM.xml	 2017-06-23 14:32:08 +0000
@@ -216,29 +216,6 @@
         <!-- -->
 
         <!-- feature map (line segments) type -->
-        <struct name="feature_map_type">
-            <elements>
-                <element name="segments">
-                    <type>
-                        <array>
-                            <type>
-                                <struct ref="segment_type">
-                                </struct>
-                            </type>
-                        </array>
-                    </type>
-                </element>
-                <element name="time_stamp">
-                    <type>
-                        <uint32/>
-                    </type>
-                </element>
-            </elements>
-        </struct>
-        
#1 deebers

Same issue for me. Current production configuration server is [Ubuntu 10.0.4 / Bazaar 2.5.1 / ReviewBoard 2.0.14].
New test server is built with [Ubuntu 16.04.3 / Bazaar 2.7.0 / ReviewBoard 2.5.15] and the existing ReviewBoard has been migrated and upgraded. I am seeing the same issue where the browser stays in the "loading" status. I attempted to create reviews using existing diff files that worked as expected in the production system.
I set the ReviewBoard log level to DEBUG, no errors reported, the only output generated just prior to entering the "loading" state is as follows:
==============================
2017-09-07 03:41:50,302 - DEBUG - - root - DiffParser.parse: Beginning parse of diff, size = 1658
2017-09-07 03:41:50,303 - DEBUG - - root - DiffParser.parse: Finished parsing diff.
==============================
I also confirmed that:
- I can raise non-bzr reviews by creating a simple review with a file attachment only
- Existing BZR-based reviews appear OK: I can open them and view the comments and the code diff
Attached for ref is one of the diff files that causes the issue.

#2 deebers

As always, forgot the attachment (facepalm)

  • +
    === modified file 'PromotionTemplateDlg.cpp'
    --- PromotionTemplateDlg.cpp	revid:sam.wilson@wipro.com-20170724070825-hhc2exzuawg88dd2
    +++ PromotionTemplateDlg.cpp	revid:darren.boden@wipro.com-20170724071305-8ybzk4d1h8dd7a0w
    @@ -1129,7 +1129,8 @@
     
           if (promo->GetIsDirty()) {
             modifiedOnShow = true;
    -        ShowDiscrepancyFoundMsg(modifiedOnShow);
    +        lblDiscrepancyFound->Visible = true;
    +        PositionStatusMessages();
             break;
           }
         }
    @@ -9133,13 +9134,6 @@
     }
     
     //---------------------------------------------------------------------------
    -void TPromotionTemplateDlg::ShowDiscrepancyFoundMsg(bool bShowMessage)
    -{
    -  lblDiscrepancyFound->Visible = bShowMessage;
    -  PositionStatusMessages();
    -}
    -
    -//---------------------------------------------------------------------------
     void TPromotionTemplateDlg::PositionStatusMessages()
     {
       // pnlPendingMessage is always visible.
    === modified file 'PromotionTemplateDlg.h'
    --- PromotionTe
#3 deebers

Not sure if it is related, with DEBUG loggin turned on the following warning is generated to the log file every now and then:

2017-09-14 05:10:42,666 - WARNING - - py.warnings - /usr/local/lib/python2.7/dist-packages/feedparser.py:345: DeprecationWarning: To avoid breaking existing software while fixing issue 310, a temporary mapping has been created from updated_parsed to published_parsed if updated_parsed doesn't exist. This fallback will be removed in a future version of feedparser.
DeprecationWarning)
===============================
(there are no other warnings in the log)