Re: Cannot access the main page for a review

2013-01-15 Thread Steve
Since this original post from last year, I've seen this problem numerous 
time. Most recently today on our main 1.5.5 server.  It's quite pesky, so 
I'm coming back with a few more questions.

First, here's a recap.

Many of our users paste the content of large, complex test output files 
into the 'Testing Done' field. Sometimes, these break access to the main 
page for the review. When we click on the link, we get a 

Something Broke (Error 500)

page. I get a Django error email with this error message:

==

 File "", line 1

   {"testing_done": {"new": ["More tests (caught a bug that was missed in 
review) :) Will upload the new set of diffs\n\n>>> 
b.Security.ProfileDoS.get_protocol_sip(profile_names=['sip_dos_1']) 
 



b.Security.ProfileDoS.get_protocol_sip_error_attack_detection_sta

^

SyntaxError: EOL while scanning single-quoted string


==

What's odd is I can't access the main page for the review, but I can go to 
the diff_header page and see everything, including the 'Testing Done' 
field. So this produces the 500 error:

https://reviewboard/r/123/

But this works fine:

https://reviewboard/r/123/diff/#index_header

So my questions are:

1. Why does this text break the main page, but show up fine on the 
diff_header page.

2. Is there any way for me to repair a review once it gets in this state?

3. What guidelines can I give my users to prevent this problem from 
happening?

Thanks!



On Friday, February 24, 2012 1:18:47 PM UTC-8, Steve wrote:
>
> Hi Christian,
>
> I'm guessing the broken review can't be fixed. Though I don't understand 
> why removing that big text string directly from the database table didn't 
> work.  What would be the closest version to 1.5.5 where the string limit 
> was increased. The mysql settings I see in 1.5.5 are for the table that I 
> think is causing the problem are:
>
> Table changedescs_changedescription
> ===
> id, timestamp, public, text, fields_changed
> ---
> id   int(11) PK
> timestampdatetime
> public   tinyint(1)
> text longtext
> fields_changed   text
>
>
> The offending text was in the fields_change entry.
>
> Thanks
>
> --Steve
>
>
> On Thursday, February 23, 2012 2:26:27 PM UTC-8, Steve wrote:
>>
>> Thanks Christian,
>>
>> I'm running 1.5.5 on a Centos 5 box. I attempted replacing the long 
>> string with an empty one in the
>>
>> reviewboard.changedescs_changedescription 
>>
>> table. In the "fields_changed" dict the bad text was in the "old" entry 
>> for testing_done. I set the "old" entry to [""], but that didn't fix the 
>> problem.
>>
>> --Steve
>>
>>
>>

-- 
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




Re: Cannot access the main page for a review

2012-02-24 Thread Steve
Hi Christian,

I'm guessing the broken review can't be fixed. Though I don't understand 
why removing that big text string directly from the database table didn't 
work.  What would be the closest version to 1.5.5 where the string limit 
was increased. The mysql settings I see in 1.5.5 are for the table that I 
think is causing the problem are:

Table changedescs_changedescription
===
id, timestamp, public, text, fields_changed
---
id   int(11) PK
timestampdatetime
public   tinyint(1)
text longtext
fields_changed   text


The offending text was in the fields_change entry.

Thanks

--Steve


On Thursday, February 23, 2012 2:26:27 PM UTC-8, Steve wrote:
>
> Thanks Christian,
>
> I'm running 1.5.5 on a Centos 5 box. I attempted replacing the long string 
> with an empty one in the
>
> reviewboard.changedescs_changedescription 
>
> table. In the "fields_changed" dict the bad text was in the "old" entry 
> for testing_done. I set the "old" entry to [""], but that didn't fix the 
> problem.
>
> --Steve
>
>
>

-- 
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

Re: Cannot access the main page for a review

2012-02-23 Thread Steve
Thanks Christian,

I'm running 1.5.5 on a Centos 5 box. I attempted replacing the long string 
with an empty one in the

reviewboard.changedescs_changedescription 

table. In the "fields_changed" dict the bad text was in the "old" entry for 
testing_done. I set the "old" entry to [""], but that didn't fix the 
problem.

--Steve


-- 
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

Re: Cannot access the main page for a review

2012-02-23 Thread Christian Hammond
Hi Steve,

This data is saved as a JSON string and if you're running an older version
of Review Board and the Description or Testing Done is too large, it's
possible for this string to truncate and cause the error you're seeing.

What version of Review Board are you using? A modern version should have
fixed this to allow for extremely large strings.

Christian

-- 
Christian Hammond - chip...@chipx86.com
Review Board - http://www.reviewboard.org
VMware, Inc. - http://www.vmware.com


On Thu, Feb 23, 2012 at 11:17 AM, Steve  wrote:

> I found the very long script text in the
>
> reviewboard.changedescs_changedescription
>
> table. In the "fields_changed" dict the script was in the "old" entry
> for testing_done. I set the "old" entry to [""], but that didn't fix
> the problem.
>
> I copied the dict into a python shell and it parsed fine, so I'm
> stumped. Maybe this testing_done entry isn't the source of the
> problem? Or maybe there's another database entry that needs cleaning
> up?
>
> I did all this in a sandbox, not the production server :)
>
>
> --Steve
>
>
> On Feb 23, 7:56 am, Steve  wrote:
> > One of my users created a review and in the 'Testing Done' field she
> > pasted in the contents of a large, complex shell script that was used
> > for the testing. When we try to access the main page for the review,
> > we see this:
> >
> > 
> > Something broke! (Error 500)
> >
> > It appears something broke when you tried to go to here. This is
> > either a bug in Review Board or a server configuration error. Please
> > report this to your administrator.
> > 
> >
> > The message I get in the log is:
> >
> > SyntaxError: EOL while scanning single-quoted string
> >
> > and it's clear from the context that RB wasn't able to parse what had
> > been pasted into the description field (lot's of nested quotes in the
> > script). I had the user remove all that from the description, but the
> > problem remains because apparently RB saves diffs on that field. So
> > the error now looks like:
> >
> > 
> >   File "/usr/lib/python2.4/site-packages/Djblets-0.6.11-py2.4.egg/
> > djblets/util/fields.py", line 205, in loads
> > val = eval(val)
> >
> >   File "", line 1
> >
> > {"diff": {"added": [["Diff r4", "/r/33599/diff/4/", 71332]]},
> > "testing_done": {"new": ["I used a script that I wrote to test out
> > which headers are returned for various types of content SNIPPED REST\n
> > \n\n\n\n"], "old": ["I used a script that I wrote to test out which
> > headers are returned for various types of content SCRIPT CONTENT HERE
> >
> > ^
> >
> > SyntaxError: EOL while scanning single-quoted string
> > 
> >
> > We'd like to avoid creating a new RB request, and the only solution I
> > could come up with is to hack the database to remove the 'Testing
> > Done' stuff entirely. Is that feasible? Advisable? Is there another
> > way to fix this?
> >
> > Thanks
> >
> > --Steve
>
> --
> 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
>

-- 
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

Re: Cannot access the main page for a review

2012-02-23 Thread Steve
I found the very long script text in the

reviewboard.changedescs_changedescription

table. In the "fields_changed" dict the script was in the "old" entry
for testing_done. I set the "old" entry to [""], but that didn't fix
the problem.

I copied the dict into a python shell and it parsed fine, so I'm
stumped. Maybe this testing_done entry isn't the source of the
problem? Or maybe there's another database entry that needs cleaning
up?

I did all this in a sandbox, not the production server :)


--Steve


On Feb 23, 7:56 am, Steve  wrote:
> One of my users created a review and in the 'Testing Done' field she
> pasted in the contents of a large, complex shell script that was used
> for the testing. When we try to access the main page for the review,
> we see this:
>
> 
> Something broke! (Error 500)
>
> It appears something broke when you tried to go to here. This is
> either a bug in Review Board or a server configuration error. Please
> report this to your administrator.
> 
>
> The message I get in the log is:
>
> SyntaxError: EOL while scanning single-quoted string
>
> and it's clear from the context that RB wasn't able to parse what had
> been pasted into the description field (lot's of nested quotes in the
> script). I had the user remove all that from the description, but the
> problem remains because apparently RB saves diffs on that field. So
> the error now looks like:
>
> 
>   File "/usr/lib/python2.4/site-packages/Djblets-0.6.11-py2.4.egg/
> djblets/util/fields.py", line 205, in loads
>     val = eval(val)
>
>   File "", line 1
>
>     {"diff": {"added": [["Diff r4", "/r/33599/diff/4/", 71332]]},
> "testing_done": {"new": ["I used a script that I wrote to test out
> which headers are returned for various types of content SNIPPED REST\n
> \n\n\n\n"], "old": ["I used a script that I wrote to test out which
> headers are returned for various types of content SCRIPT CONTENT HERE
>
> ^
>
> SyntaxError: EOL while scanning single-quoted string
> 
>
> We'd like to avoid creating a new RB request, and the only solution I
> could come up with is to hack the database to remove the 'Testing
> Done' stuff entirely. Is that feasible? Advisable? Is there another
> way to fix this?
>
> Thanks
>
> --Steve

-- 
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


Cannot access the main page for a review

2012-02-23 Thread Steve
One of my users created a review and in the 'Testing Done' field she
pasted in the contents of a large, complex shell script that was used
for the testing. When we try to access the main page for the review,
we see this:


Something broke! (Error 500)

It appears something broke when you tried to go to here. This is
either a bug in Review Board or a server configuration error. Please
report this to your administrator.


The message I get in the log is:

SyntaxError: EOL while scanning single-quoted string

and it's clear from the context that RB wasn't able to parse what had
been pasted into the description field (lot's of nested quotes in the
script). I had the user remove all that from the description, but the
problem remains because apparently RB saves diffs on that field. So
the error now looks like:


  File "/usr/lib/python2.4/site-packages/Djblets-0.6.11-py2.4.egg/
djblets/util/fields.py", line 205, in loads
val = eval(val)

  File "", line 1

{"diff": {"added": [["Diff r4", "/r/33599/diff/4/", 71332]]},
"testing_done": {"new": ["I used a script that I wrote to test out
which headers are returned for various types of content SNIPPED REST\n
\n\n\n\n"], "old": ["I used a script that I wrote to test out which
headers are returned for various types of content SCRIPT CONTENT HERE
 
^

SyntaxError: EOL while scanning single-quoted string


We'd like to avoid creating a new RB request, and the only solution I
could come up with is to hack the database to remove the 'Testing
Done' stuff entirely. Is that feasible? Advisable? Is there another
way to fix this?

Thanks

--Steve

-- 
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


Cannot access the main page for a review

2012-02-23 Thread Steve
One of my users created a review and in the 'Testing Done' field she
pasted in the contents of a large, complex shell script that was used
for the testing. When we try to access the main page for the review,
we see this:


Something broke! (Error 500)

It appears something broke when you tried to go to here. This is
either a bug in Review Board or a server configuration error. Please
report this to your administrator.


The message I get in the log is:

SyntaxError: EOL while scanning single-quoted string

and it's clear from the context that RB wasn't able to parse what had
been pasted into the description field (lot's of nested quotes in the
script). I had the user remove all that from the description, but the
problem remains because apparently RB saves diffs on that field. So
the error now looks like:


  File "/usr/lib/python2.4/site-packages/Djblets-0.6.11-py2.4.egg/
djblets/util/fields.py", line 205, in loads
val = eval(val)

  File "", line 1

{"diff": {"added": [["Diff r4", "/r/33599/diff/4/", 71332]]},
"testing_done": {"new": ["I used a script that I wrote to test out
which headers are returned for various types of content SNIPPED REST\n
\n\n\n\n"], "old": ["I used a script that I wrote to test out which
headers are returned for various types of content SCRIPT CONTENT HERE
 
^

SyntaxError: EOL while scanning single-quoted string


We'd like to avoid creating a new RB request, and the only solution I
could come up with is to hack the database to remove the 'Testing
Done' stuff entirely. Is that feasible? Advisable? Is there another
way to fix this?

Thanks

--Steve

-- 
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