3156: New Review page is blank

tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
Jan. 23, 2014
What version are you running?
Reviewboard 2.0beta2

What's the URL of the page containing the problem?
Create New Review

What steps will reproduce the problem?
1. Click 'Create New Review'
2.
3.

What is the expected output? What do you see instead?
I would expect to see a form allowing me to create a review

What operating system are you using? What browser?
Reviewboard hosted on Ubuntu 12.04.
Problem seen on Linux client with Firefox, and Windows client with both IE and Firefox

Please provide any additional information below.
Our source code repository is subversion.
The repository contains multiple projects, at some levels down in the directory structure.
Instead of trunk/branches/tags, we use Trunk/Branches/Releases/Tags
#1 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
Reviewboard and Djblets used are the most recent from git as of yesterday (4 Dec, Australian time)
david
#2 david
Completely blank? You can't even do a pre-commit review?

Would you be able to share a screenshot? Are there any errors in the javascript console?
  • +NeedInfo
#4 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
I don't see any errors at the web browser.
I don't have a javascript console, not sure how I would see it.
I have looked in the Reviewboard log, log level set to Debug, nothing there.
The screen is completely blank, except for the frame - I'll send a screenshot shortly
david
#5 david
What web browser are you using?
david
#6 david
Oh, nevermind, I see. Let's try with firefox. To see javascript errors, go to Tools > Web Developer > Web Console.
#7 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
Here is the screenshot.
I'll check for javascript errors when I get back to my desk.
Apologies in advance for my ignorance here. I have some 30 years developing in cobol, C, C++, a little javascript, and even a bit of assembler. Web development tools are mostly a mystery to me.
#8 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
I have attached the javascript log from the point when I clicked on 'New Review Request'

First thing I saw was that djblets did not exist in the static resources.
Comparing to my production installation, I found the correct link and created it by hand. I am using Djblets 0.8 alpha2 from git.
Trying again still shows an empty review screen. Here are the top few lines of the javascript log.

[11:31:04.775] GET http://www.gravatar.com/avatar/99548f4adde81b3888b836b4f1dfaaee?s=32 [1ms]
[11:31:04.878] GET http://reviewtest.cea.com.au/static/djblets/js/jquery.gravy.min.js [HTTP/1.1 404 Not Found 1ms]
[11:31:04.879] GET http://reviewtest.cea.com.au/static/djblets/js/extensions.min.js [HTTP/1.1 404 Not Found 1ms]
[11:31:04.837] ReferenceError: Djblets is not defined @ http://reviewtest.cea.com.au/static/rb/js/base.min.js:1
[11:31:04.837] TypeError: RB.UserSession is undefined @ http://reviewtest.cea.com.au/r/new/:170
[11:31:04.838] TypeError: RB.BaseResource is undefined @ http://reviewtest.cea.com.au/static/rb/js/newReviewRequest.min.js:1

Looking at Djblets 0.8 alpha2 shows that jquery.gravy.min.js and extensions.min.js do not exist.
The previous failed lookup of the .css file has now been resolved.
  • +
    [11:18:30.411] GET http://reviewtest.cea.com.au/dashboard/ [HTTP/1.1 200 OK 127ms]
    [11:18:30.696] GET http://reviewtest.cea.com.au/static/djblets/css/datagrid.min.css [HTTP/1.1 404 Not Found 1ms]
    [11:18:30.549] Unknown property 'box-sizing'.  Declaration dropped. @ http://reviewtest.cea.com.au/static/rb/css/common.min.css:122
    [11:18:30.549] Unknown property 'box-sizing'.  Declaration dropped. @ http://reviewtest.cea.com.au/static/rb/css/common.min.css:162
    [11:18:30.549] Expected declaration but found '*'.  Skipped to next declaration. @ http://reviewtest.cea.com.au/static/rb/css/common.min.css:167
    [11:18:30.549] Expected declaration but found '*'.  Skipped to next declaration. @ http://reviewtest.cea.com.au/static/rb/css/common.min.css:168
    [11:18:30.549] Unknown property '-moz-border-radius'.  Declaration dropped. @ http://reviewtest.cea.com.au/static/rb/css/common.min.css:181
    [11:18:30.550] Error in parsing value for 'width'.  Declaration dropped. @ http://reviewtest.cea.com.au/static
david
#9 david
Hmm, that doesn't look right. The .min.js files should have a serial in the filename. What are the values of  DEBUG and PRODUCTION in settings_local.py?
#10 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
DEBUG = True
PRODUCTION is undefined

settings_local.py attached, passwords redacted.
  • +
    # Site-specific configuration settings for Review Board
    # Definitions of these settings can be found at
    # http://docs.djangoproject.com/en/dev/ref/settings/
    # Database configuration
    DATABASES = {
        'default': {
            'ENGINE': 'django.db.backends.postgresql_psycopg2',
            'NAME': 'reviewboard',
            'USER': 'reviewboard',
            'PASSWORD': '******',
            'HOST': 'localhost',
            'PORT': '',
        },
    }
    # Unique secret key. Don't share this with anybody.
    SECRET_KEY = '**************************************************'
    # Cache backend settings.
    CACHES = {
        'default': {
            'BACKEND': 'django.core.cache.backends.memcached.MemcachedCache',
            'LOCATION': 'localhost:11211',
        },
    }
    # Extra site information.
    SITE_ID = 1
    SITE_ROOT = '/'
    FORCE_SCRIPT_NAME = ''
    DEBUG = True
    ALLOWED_HOSTS = ['reviewtest.cea.com.au']
david
#11 david
I think this will work if you set DEBUG to False and reload the web server.
#12 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
Reviewboard fails immediately now.
"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."

site log attached

  • +
    2013-12-05 01:46:52,174 - ERROR -  - Exception thrown for user tjb at http://reviewtest.cea.com.au/dashboard/
    The file 'djblets/css/datagrid.min.css' could not be found with <pipeline.storage.PipelineCachedStorage object at 0xba6f9a6c>.
    Traceback (most recent call last):
      File "/usr/local/lib/python2.7/dist-packages/django/core/handlers/base.py", line 115, in get_response
        response = callback(request, *callback_args, **callback_kwargs)
      File "/usr/local/lib/python2.7/dist-packages/django/contrib/auth/decorators.py", line 25, in _wrapped_view
        return view_func(request, *args, **kwargs)
      File "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0beta2.dev-py2.7.egg/reviewboard/accounts/decorators.py", line 40, in _check_valid_prefs
        return view_func(request, *args, **kwargs)
      File "/usr/local/lib/python2.7/dist-packages/ReviewBoard-2.0beta2.dev-py2.7.egg/reviewboard/reviews/views.py", line 831, in dashboard
        return grid.render_to_response(template_name, extra
david
#13 david
What version of djblets is installed, and how did you install it?
#15 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
The djblets we are using id 0.8alpha2-dev, pulled from the git repository.
The last update I have for that is dated Fri 29 Nov, commit id 2e6d4ec00a0e6ca686acd7b1be7273486b3e2267

Our reviewboard machine (and most others) are insulated from the internet by an air gap, so the installation process for reviewboard and djblets is to do
  cd reviewboard
  git pull
  cd ..
  tar czf reviewboard.tgz reviewboard
Mail reviewboard.tgz to my internal account through an email tunnel.

At the reviewboard machine, unpack the tarball, and
  python setup.py build
  python setup.py install

The biggest issue with this is resolving dependencies, as I usually find them one at a time.

Sorry to take so long to reply, I had Friday off work.
david
#16 david
Do you have uglifyjs and less installed on the host where you're doing the build?
#17 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
Yes - I remember having issues with these when I first installed RB 2.0, and had to find the correct package to install. 
david
#18 david
It looks like the media build failed during the djblets install. I'd suggest trying to either rebuild that, or to download the latest 0.8 .egg file and install that instead of doing it from git.
#19 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
I rebuilt my djblets and checked the log carefully - no failures reported.
After restarting apache, the issue was still there.

I fetched the djblets-08.alpha1 eggs, installed the python 2.7 egg, and restarted apache. This was the most recent egg I could find on the RB download site.

I get a 'reviewboard is busy' web page.
I have attached the apache error log for this.

I think I needed a more recent djblets to get by ADS authentication working, but am clearly not even getting that far.

I had not intended this to become the saga that it is. If this is probably an installation error, then I will be happy to leave it alone until (say) Djblets 0.8 gets out of alpha.
  • +
    [Thu Nov 14 11:24:18 2013] [info] [client 172.16.2.39] mod_wsgi (pid=1271, process='', application='reviewtest.cea.com.au|'): Loading WSGI script '/srv/reviews/wolf.cea.com.au/htdocs/reviewboard.wsgi'.
    [Thu Nov 14 11:25:58 2013] [info] [client 172.16.2.39] mod_wsgi (pid=1461, process='', application='reviewtest.cea.com.au|'): Loading WSGI script '/srv/reviews/wolf.cea.com.au/htdocs/reviewboard.wsgi'.
    [Thu Nov 14 13:12:13 2013] [info] [client 172.16.2.39] mod_wsgi (pid=5937, process='', application='reviewtest.cea.com.au|'): Loading WSGI script '/srv/reviewboard/reviewtest.cea.com.au/htdocs/reviewboard.wsgi'.
    [Fri Nov 15 11:50:20 2013] [info] [client 172.16.2.39] mod_wsgi (pid=19614, process='', application='reviewtest.cea.com.au|'): Loading WSGI script '/srv/reviewboard/reviewtest.cea.com.au/htdocs/reviewboard.wsgi'.
    [Fri Nov 15 12:08:51 2013] [info] [client 172.16.2.39] mod_wsgi (pid=21042, process='', application='reviewtest.cea.com.au|'): Loading WSGI script '/srv/reviewboard/re
david
#20 david
You probably should run 'rb-site upgrade' after installing the new djblets, to update the symlinks.
#21 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
I have run rb-site upgrade, using first Djblets 0.8alpha1, then tried again with Djblets 0.8alpha2-dev. I had to remember to create the link from the RB site.
Seemed to be no change (same symptoms). I will check the log.
#22 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
Same issues reported in the log.
#23 tjbu****@gmai***** (Google Code) (Is this you? Claim this profile.)
On the possibility that I had an installation problem, I attempted a clean re-install.

I fetched the git bundles from 4 hours ago, erased my site setup, and re-installed using the new git bundles. My site erase removed the directory tree, and the postgres database. 

Everything installed 'out of the box', without complaint.

Created a new postgres database for the install
I ran rb-site install to install cleanly, made the symbolic link to the static djblets resources, even checked the apache configuration to see that it matched what the install gave me.

I then tried to access reviewboard - same failure as previously (comment #12).
There is an additional problem, in that I can't turn on reviewboard logging now, so can't check that. The apache error log shows nothing.
david
#24 david
  • +Component-Deployment
david
#25 david
  • -NeedInfo
    +SetupIssue