Hi Stephen,

I don't recall exact details, but I've seen the "rb-site upgrade" command 
fail on occasion.  I think in my case the sequence was:

* yum update       [Included a reviewboard update]
* reboot
* While httpd service was starting rb-site upgrade was invoked.
* rb-site upgrade failed because mariadb had not started yet.

I manually fixed the issue by starting mariadb and running rb-site upgrade 
by hand.  However it does appear there's a race condition between httpd 
startup and rb-site's dependency on the database being available.

I'm not sure if this matches David's problem, but hopefully the above 
sequence will help you reproduce his issue and enhance the auto upgrade 
feature you implemented for Fedora packages.

Thanks,
Paul

On Wednesday, September 24, 2014 1:14:34 AM UTC+1, David Carson wrote:
>
>
>
> On Tuesday, September 23, 2014 7:10:51 PM UTC-4, Stephen Gallagher wrote:
>>
>> On 09/23/2014 03:38 PM, David Carson wrote: 
>> > After following all directions for installing ReviewBoard 2.0 on CentOS 
>> > 7, I am still seeing one error that bothers me.  When I try to restart 
>> > httpd, it remains in *'starting'* state and will never go to *'active 
>> > (running)'* state.  However, if I remove the following file, httpd 
>> > starts and stops properly. 
>> > 
>> >    /usr/lib/systemd/system/httpd.service.d/reviewboards-sites.conf 
>> > 
>> > I only discovered this file because there was an error in 
>> > /var/log/messages regarding the line "type=oneshot" (which should be 
>> > "*T*ype=oneshot").  After correcting the spelling, I no longer see the 
>> > error, but I cannot start httpd either. 
>> > 
>> > I have moved this file out of the way, and my ReviewBoard installation 
>> > is now working, at least to the point of bringing up the interface and 
>> > allowing me to login as admin.  But I'm wondering what the 
>> repercussions 
>> > of removing the systemd file might be. 
>> > 
>>
>> I'll field this one, since this bit is unique to my packages. The 
>> purpose of that oneshot target is to guarantee that the Review Board 
>> automatically runs 'rb-site upgrade' for all sites when it is started up 
>> (thus guaranteeing that if you perform an RPM upgrade, it will upgrade 
>> Review Board the next time it is started. 
>>
>> I'm curious why it's hanging during the upgrade step, though. Can you 
>> check the journal for what's happening when you see that? 
>>
>> The command 'journalctl -e -u httpd.service' should give you the output. 
>> It's possible that there's a bug in the upgrade routine. Have you 
>> checked for SELinux denials? 
>>
>
> Stephen,
> This is an internal-only server, so I turned off SELinux before doing 
> anything else (and rebooted, of course).
>
> The journalctl command seems to indicate that the update finished:
>
>
> -- Logs begin at Tue 2014-09-23 18:56:22 EDT, end at Tue 2014-09-23 
> 19:50:32 EDT. --
> :
> :
> Sep 23 19:50:13 pinehurst.e.com systemd[1]: Stopping The Apache HTTP 
> Server...
> Sep 23 19:50:14 pinehurst.e.com systemd[1]: Starting The Apache HTTP 
> Server...
> Sep 23 19:50:14 pinehurst.e.com systemd[1]: Started The Apache HTTP 
> Server.
> Sep 23 19:50:27 pinehurst.e.com systemd[1]: Stopping The Apache HTTP 
> Server...
> Sep 23 19:50:28 pinehurst.e.com systemd[1]: Starting The Apache HTTP 
> Server...
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Rebuilding directory 
> structure
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Updating database. This 
> may take a while.
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: The log output below, 
> including warnings and errors,
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: can be ignored unless 
> upgrade fails.
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: ------------------ <begin 
> log output> ------------------
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Creating tables ...
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Installing custom SQL ...
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Installing indexes ...
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Installed 0 object(s) from 
> 0 fixture(s)
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: No evolution required.
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: ------------------- <end 
> log output> -------------------
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Resetting in-database 
> caches.
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: *Upgrade complete!* 
>
>
>
> But the systemctl command itself is sitting there, not returning to the 
> command prompt, and the status shows that it is still activating, but never 
> activated:
>
> (0)[root@pinehurst ~] systemctl status httpd.service
> httpd.service - The Apache HTTP Server
> Loaded: loaded (/usr/lib/systemd/system/httpd.service; enabled)
> Drop-In: /usr/lib/systemd/system/httpd.service.d
> └─reviewboard-sites.conf
> *Active: activating (start) *since Tue 2014-09-23 19:50:28 EDT; 11min ago
> Process: 3223 ExecStop=/bin/kill -WINCH ${MAINPID} (code=exited, 
> status=0/SUCCESS)
> Process: 3228 ExecStartPre=/usr/bin/rb-site upgrade --all-sites 
> (code=exited, status=0/SUCCESS)
> Main PID: 3235 (httpd)
> Status: "Total requests: 0; Current requests/sec: 0; Current traffic: 0 
> B/sec"
> CGroup: /system.slice/httpd.service
> ├─3235 /usr/sbin/httpd -DFOREGROUND
> ├─3237 /usr/sbin/httpd -DFOREGROUND
> ├─3238 /usr/sbin/httpd -DFOREGROUND
> ├─3239 /usr/sbin/httpd -DFOREGROUND
> ├─3240 /usr/sbin/httpd -DFOREGROUND
> ├─3241 /usr/sbin/httpd -DFOREGROUND
> └─3242 /usr/sbin/httpd -DFOREGROUND
>
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Rebuilding directory 
> structure
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: Updating database. This 
> may take a while.
> Sep 23 19:50:32 pinehurst.e.com rb-site[3228]: The log output below, 
> including warnings and errors,
> :
> :
> :
>

-- 
Get the Review Board Power Pack at http://www.reviewboard.org/powerpack/
---
Sign up for Review Board hosting at RBCommons: https://rbcommons.com/
---
Happy user? Let us know at http://www.reviewboard.org/users/
--- 
You received this message because you are subscribed to the Google Groups 
"reviewboard" 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