Unexpected 'failed to open stream: No such file or directory'

I am using the Jquery UI extension, in particular the DatePicker widget. I have a view that uses the DatePicker, and the view is displayed in a Yii tab control.

I have started getting the error below, but not all the time. The page will work fine, then at some point it starts giving this error. If left, it will eventually (10 minutes to an hour) right itself. Or restarting Apache also fixes the problem.

2009/11/19 14:08:08 [error] [php] include(EJqueryUiWidget.php) [<a

href=‘function.include’>function.include</a>]: failed to open stream:

No such file or directory

I can of course confirm that the file IS there. Restarting Apache seems to fix the problem. I cannot reproduce it on command.

I believe that the problem has started occurring since I enabled APC caching on the site, but this particular page and widget has no caching enabled.

Does anyone have any suggestions of where I might find the problem?

CentOS 5.2 (Linux 2.6.18-128.7.1.el5)

Apache/2.2.3

Yii 1.0.9

The view:


<form id="snb2">

    <input name="from_date_alt" id="snb2-from-date-alt" value="" type="hidden" />

    <div class="fields">

        <div class="label-field state">

            <label for="snb2-state">State</label><select name="state" id="snb2-state" class=""><option value="38" selected="selected">QLD</option><option value="58">NSW</option><option value="14">VIC</option><option value="12">SA</option><option value="15">WA</option><option value="10">NT</option><option value="8">ACT</option><option value="13">TAS</option></select>						</div>

        <div class="label-field region">

            <label for="snb2-region">Region</label>

            <select name="region" id="snb2-region" class="limit-width"></select>

        </div>

        <div class="aa-clear"></div>

        <div class="label-field from-date">

            <label for="snb2-from-date">Arrive</label>

            <?

            $this->widget('application.extensions.jui.EDatePicker',

                array(

                    'name'=>'snb2-from-date',

                    'language'=>'en',

                    'mode'=>'imagebutton',

                    'theme'=>'aa',

                    'value'=>'',

                    'fontSize'=>'0.9',

                    'dateFormat'=>'dd/mm/yy',

                    'options'=>array(

                        'buttonImage'=>"'/images/icons/calendar-med.gif'",

                        'buttonText'=>"'Choose from calendar'",

                        'minDate'=>0,

                        'maxDate'=>730,

                        'altFormat'=>"'dd-M-yy'",

                        'altField'=>"'#snb2-from-date-alt'",

                        'changeMonth'=>true,

                        'changeYear'=>true,

                        'dayNames'=>array('Su','Mo','Tu','We','Th','Fr','Sa'),

                    ),

                    'htmlOptions'=>array(

                        'size'=>19,

                    )

                )

            );

            ?>

        </div>

    </div>

    <input type="submit" value="Search" class="buttons2-small" />

</form>

<div class="aa-clear"></div>

The tabs:


<div id="Search_BookPanel">

    <h2>Search &amp; Book</h2>

    <?php    

    $tabs = array(

       'accommodation'=>array('title'=>'Accommodation','view'=>"/product/search"),

       'tours'=>array('title'=>'Tours','view'=>"/site/snb2"),

       'dining-takeaway'=>array('title'=>'Dining &amp; Takeaway','view'=>"/site/snb3"),

    );


    $this->widget('MyTabView', array('tabs'=>$tabs, 'viewData'=>array('stateList'=>$stateList), 'cssFile'=>false));

    ?>

</div>

Stack trace maybe has some clue?

The major PITA is that I can’t reproduce it in development environment :angry:




2009/11/19 20:26:02 [error] [php] include(EJqueryUiWidget.php) [<a

href='function.include'>function.include</a>]: failed to open stream:

No such file or directory

(/var/www/vhosts/site.com/yii/framework/YiiBase.php:324)

Stack trace:

#0 /var/www/vhosts/site.com/yii/framework/YiiBase.php(246):

spl_autoload_call()

#1 /var/www/vhosts/site.com/yii/framework/YiiBase.php(246):

import()

#2

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(137):

import()

#3

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(153):

SiteController->createWidget()

#4

/var/www/vhosts/site.com/httpdocs/protected/views/site/snb2.php(38):

SiteController->widget()

#5

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(119):

require()

#6

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(88):

SiteController->renderInternal()

#7

/var/www/vhosts/site.com/yii/framework/web/CController.php(706):

SiteController->renderFile()

#8

/var/www/vhosts/site.com/yii/framework/web/widgets/CTabView.php(197):

SiteController->renderPartial()

#9

/var/www/vhosts/site.com/yii/framework/web/widgets/CTabView.php(138):

MyTabView->renderBody()

#10

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(154):

MyTabView->run()

#11

/var/www/vhosts/site.com/httpdocs/protected/components/views/searchAndBookHome.php(10):

SearchAndBookHome->widget()

#12

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(123):

require()

#13

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(88):

SearchAndBookHome->renderInternal()

#14

/var/www/vhosts/site.com/yii/framework/web/widgets/CWidget.php(201):

SearchAndBookHome->renderFile()

#15

/var/www/vhosts/site.com/httpdocs/protected/components/SearchAndBookHome.php(36):

SearchAndBookHome->render()

#16

/var/www/vhosts/site.com/httpdocs/protected/components/Portlet.php(22):

SearchAndBookHome->renderContent()

#17

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(154):

SearchAndBookHome->run()

#18

/var/www/vhosts/site.com/httpdocs/protected/views/site/index.php(13):

SiteController->widget()

#19

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(119):

require()

#20

/var/www/vhosts/site.com/yii/framework/web/CBaseController.php(88):

SiteController->renderInternal()

#21

/var/www/vhosts/site.com/yii/framework/web/CController.php(706):

SiteController->renderFile()

#22

/var/www/vhosts/site.com/yii/framework/web/CController.php(645):

SiteController->renderPartial()

#23

/var/www/vhosts/site.com/httpdocs/protected/controllers/SiteController.php(36):

SiteController->render()

#24

/var/www/vhosts/site.com/yii/framework/web/actions/CInlineAction.php(32):

SiteController->actionIndex()

#25

/var/www/vhosts/site.com/yii/framework/web/CController.php(300):

CInlineAction->run()

#26

/var/www/vhosts/site.com/yii/framework/web/CController.php(278):

SiteController->runAction()

#27

/var/www/vhosts/site.com/yii/framework/web/CController.php(257):

SiteController->runActionWithFilters()

#28

/var/www/vhosts/site.com/yii/framework/web/CWebApplication.php(332):

SiteController->run()

#29

/var/www/vhosts/site.com/yii/framework/web/CWebApplication.php(120):

CWebApplication->runController()

#30

/var/www/vhosts/site.com/yii/framework/base/CApplication.php(135):

CWebApplication->processRequest()

#31 /var/www/vhosts/site.com/httpdocs/index.php(26):

CWebApplication->run()

REQUEST_URI=/



That reminds me of a similar problem we had with APC and Prado. Check the issue description for details. It’s a pretty complex problem.

It went away when updating to the latest APC beta (on my system i’ve 3.1.2).