Description of problem: Since 3 days ago, my perl app, hosted at openshift.com, no longer works. When visiting http://kino-gortan.rhcloud.com/bin/check I receive a 400, and in the $OPENSHIFT_PERL_LOG_DIR/perl.log I see: [error] Can't locate DbConfig.pm in @INC ... DbConfig.pm exists and is located in $OPENSHIFT_REPO_DIR/libs/DbConfig.pm Before this week's update, this directory was part of the PERL5LIB environment variable, as exposed to cgi scripts via apache. Now, it is no longer part, as you can verify here: http://kino-gortan.rhcloud.com/bin/env How reproducible: * Create a .pm module in libs/ * Create a cgi-bin script in perl/bin/, importing the .pm * Visit the cgi-bin script with your browser Actual results: 500, logfile contains: Can't locate xxx.pm in @INC Expected results: .pm file is found by cgi
sorry, I meant: I receive a 500 (not 400)
Hi mephinet, thank you for reporting this issue. Found the cause of the bug and working on the fix. Will let you know. -Jakub
Commit pushed to master at https://github.com/openshift/origin-server https://github.com/openshift/origin-server/commit/a8fa185575b30a17f0fbe50ed156d54537580c7a Bug 1086609 - Adding $OPENSHIFT_REPO_DIR/libs back into $PERL5LIB for backward compatibility
Hi Jakub, I'm still seeing the problem. Not sure if I am following the directions correctly. Here's the file structure and the attached Math.pm and test.pl file. [peter@unused-16-138 <DEV> perlapp]# tree . ├── bin │ └── test.pl ├── index.pl ├── libs │ └── Math.pm └── perl
Created attachment 885639 [details] math.pm
Created attachment 885640 [details] test.pl
Hi Peter, the problem has been fixed. Now we have to wait till it goes to production, which will be today or tommorow. Afted that it should be working. -Jakub
Verified on devenv-stage_802, OPENSHIFT_REPO_DIR is in PERL5LIB after the fix is merged in. [perl1-jhou.dev.rhcloud.com 534bb333c2ed88c222000029]\> env|grep PERL5LIB PERL5LIB=/var/lib/openshift/534bb333c2ed88c222000029/app-root/runtime/repo/libs:/var/lib/openshift/534bb333c2ed88c222000029/perl/perl5lib/lib/perl5/ [perl1-jhou.dev.rhcloud.com 534bb333c2ed88c222000029]\> env|grep OPENSHIFT_REPO_DIR OPENSHIFT_REPO_DIR=/var/lib/openshift/534bb333c2ed88c222000029/app-root/runtime/repo/
Also tried STG, the fix has not made to STG. [perl1-jhou.stg.rhcloud.com 534bb98f2587c854bd0003dc]\> env|grep PERL5LIB PERL5LIB=/var/lib/openshift/534bb98f2587c854bd0003dc/perl/perl5lib/lib/perl5/ [perl1-jhou.stg.rhcloud.com 534bb98f2587c854bd0003dc]\> env|grep OPENSHIFT_REPO_DIR OPENSHIFT_REPO_DIR=/var/lib/openshift/534bb98f2587c854bd0003dc/app-root/runtime/repo/
The changes should be in STG now. Putting on ON_QA
Verified on INT (devenv_4681), OPENSHIFT_REPO_DIR/libs is in PERL5LIB now like below: [perl-dm.int.rhcloud.com perl5lib]\> env|grep PERL5LIB PERL5LIB=/var/lib/openshift/534e1dfb03ef64e50e000909/app-root/runtime/repo/libs:/var/lib/openshift/534e1dfb03ef64e50e000909/perl/perl5lib/lib/perl5/ [perl-dm.int.rhcloud.com perl5lib]\> env|grep OPENSHIFT_REPO_DIR OPENSHIFT_REPO_DIR=/var/lib/openshift/534e1dfb03ef64e50e000909/app-root/runtime/repo/