Bug 902309 - [fork][model refactor] Application's alias config files is missing after migration
Summary: [fork][model refactor] Application's alias config files is missing after migr...
Keywords:
Status: CLOSED CURRENTRELEASE
Alias: None
Product: OKD
Classification: Red Hat
Component: Containers
Version: 2.x
Hardware: Unspecified
OS: Unspecified
high
high
Target Milestone: ---
: ---
Assignee: Rajat Chopra
QA Contact: libra bugs
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-01-21 11:02 UTC by Jianwei Hou
Modified: 2015-05-14 23:04 UTC (History)
1 user (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-02-13 23:05:03 UTC
Target Upstream Version:
Embargoed:


Attachments (Terms of Use)

Description Jianwei Hou 2013-01-21 11:02:11 UTC
Description of problem:
After upgrading from devenv-stage_276 to fork_ami_refctr1_434, the application's alias config file under /var/lib/openshift/.httpd/ is missing, thus, accessing app via alias end up in failure.

Version-Release number of selected component (if applicable):
from stage_276 upgraded to fork_ami_434

How reproducible:
Always

Steps to Reproduce:
1. Create an application and add alias to it
rhc app create nodejs1 nodejs-0.6
rhc alias add nodejs1 nodejsapp
2. Copy pacakges under ~/devenv-local and local.repo to devenv-stage_276 instance 
3. Modify devenv.repo, replace 'stage' with 'candidate' in order to update to latest 
sed -i 's/stage/candidate/g' /etc/yum.repos.d/devenv.repo
4. yum update --enablerepo devenv-local
5. Clear broker cache, and execute migrate-mongo-2.1
6. Access application via alias on client
curl -H "Host: nodejsapp" nodejs1-scale.dev.rhcloud.com
  
Actual results:
hjw@hjw devenv$ curl -H "Host: nodejsapp" nodejs1-scale.dev.rhcloud.com
<!DOCTYPE HTML PUBLIC "-//IETF//DTD HTML 2.0//EN">
<html><head>
<title>302 Found</title>
</head><body>
<h1>Found</h1>
<p>The document has moved <a href="https://nodejsapp/app">here</a>.</p>
<hr>
<address>Apache/2.2.15 (Red Hat) Server at nodejsapp Port 80</address>
</body></html>

After further dig, the /var/lib/openshift/.httpd/af514e824c8e4f08a16c60fe9c592070_nonscale_nodejs1/routes_alias-nodejs1.json is missing, therefore, accessing application via alias will result in failure.
[root@ip-10-8-90-147 .httpd.d]# ls af514e824c8e4f08a16c60fe9c592070_nonscale_nodejs1/
00000_default.conf  routes.json  zzzzz_proxy.conf

Since domain show doesn't work currently, I called rest api to retrieve my app's info, and I have confirmed the alias exist for this app: 
.....
 <aliases>
        <alias>nodejsapp</alias>
      </aliases>
.......


Expected results:
Alias should still function after upgrading and migration.

Additional info:

Comment 1 Rajat Chopra 2013-01-21 23:02:19 UTC
That is very unlikely. The migration does not touch the node at all. Its a mongo migration. The alias files were in the right place before the migration?

Comment 2 Jianwei Hou 2013-01-22 02:26:00 UTC
(In reply to comment #1)
> That is very unlikely. The migration does not touch the node at all. Its a
> mongo migration. The alias files were in the right place before the
> migration?

Thanks, since the script only does a mongo migration, it is not likely to cause such a problem. But it's true that the alias files are missing. So my guess is that maybe they were removed when I did a yum update.

I have confirmed once again, but this time they exists before and after upgrade and migrate. This is wired since two of may apps have the situation yesterday, but can't reproduce it today.

I did this test on a devenv-stage_276 ami yesterday, the ami which I can not find now. Maybe it was broken, and I guess this might be the cause.

I have moved this bug to verified, and will pay particular attention to aliases since most of our customers prefer a custom domain name than rhcloud.com.


Note You need to log in before you can comment on or make changes to this bug.