Bug 1024620

Summary: Existing nodejs-0.6 app could not be accessed after migration in INT
Product: OpenShift Online Reporter: Wei Sun <wsun>
Component: ContainersAssignee: Jhon Honce <jhonce>
Status: CLOSED CURRENTRELEASE QA Contact: libra bugs <libra-bugs>
Severity: high Docs Contact:
Priority: high    
Version: 2.xCC: agoldste, dmcphers
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2014-01-24 03:27:41 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Wei Sun 2013-10-30 05:56:49 UTC
Description of problem:
Try to access existing nodejs-0.6 app after migration,but failed to access.It return 503,but app's status is started.

Could not reproduce this issue  on devenv_3966 which is upgraded from devenv_stage_528.

Version-Release number of selected component (if applicable):
INT(devenv_3965)

How reproducible:
Always

Steps to Reproduce:
1.Create some nodejs-0.6 apps
2.INT upgrade
3.Access the app's url

Actual results:
1.
my nodejs-0.6 app:
nd6 @ http://nd6-wsun1int.int.rhcloud.com/ (uuid: 5264ecfe6cec0e38c600020d)

3.Could not access the app's url

Expected results:
App could be accessed

Additional info:
1.[nd6-wsun1int.int.rhcloud.com runtime]\> ls -a
.		    .preupgrade_state			   .upgrade_complete_create_dep_symlinks	    .upgrade_complete_stop_gear
..		    repo				   .upgrade_complete_create_initial_deployment_dir  .upgrade_itinerary
build-dependencies  .state				   .upgrade_complete_inspect_gear_state
data		    .upgrade_complete_add_deployments_dir  .upgrade_complete_pre_upgrade
dependencies	    .upgrade_complete_compute_itinerary    .upgrade_complete_restore_repo


2.nodejs.log
DEBUG:     throw new Error("Cannot find module '" + request + "'");

DEBUG: Error: Cannot find module 'express'
    at Function._resolveFilename (module.js:337:11)
    at Function._load (module.js:279:25)
    at Module.require (module.js:359:17)
    at require (module.js:375:17)
    at Object.<anonymous> (/var/lib/openshift/5264ecfe6cec0e38c600020d/app-root/runtime/repo/server.js:3:15)
    at Module._compile (module.js:446:26)
    at Object..js (module.js:464:10)
    at Module.load (module.js:353:31)
    at Function._load (module.js:311:12)
    at Array.0 (module.js:484:10)

DEBUG: Program node server.js exited with code 1

DEBUG: Starting child process with 'node server.js'
DEBUG:

DEBUG: module.js:337

Comment 1 Andy Goldstein 2013-10-30 12:58:53 UTC
From the upgrade log: Couldn't move dep contents from /var/lib/openshift/5264ecfe6cec0e38c600020d/.npm.backup to /var/lib/openshift/5264ecfe6cec0e38c600020d/.npm

I believe this has been fixed with the fix for #1020553 (https://github.com/openshift/li/commit/a89d597a6d0b02234cb5d76e19411a4f1db20e59) and/or #1024322 (https://github.com/openshift/li/commit/8a68f1ccecdbdffb578bc7c22ee0ef8e7f13987d).

If you weren't able to reproduce this in devenv 3966, I would think this will be fixed when INT is upgraded to a newer devenv.

Comment 2 Dan McPherson 2013-10-30 14:09:09 UTC
It's also possible that app in INT is permanently busted.  What we should do is:

Validate on a new devenv that it isn't a problem there.  
Create apps in stage you can test this against for when stage is updated.
When INT is updated again check to see if it was fixed but don't fail this bug if it wasn't.

Comment 3 Wei Sun 2013-10-31 07:34:05 UTC
Verified in INT(devenv_3971) and devenv_3971 which upgraded from devenv_stage_528

Now existing nodejs app's url could be accessed.