Problema Con De Cdbexception

Hola Gente, quisiera que me ayudaran con un problemita el sistema me esta arrojando este error:

Pero, lo extraño es que la aplicacion funciona bien sale el error de vez en cuando funciona bien pero despues persiste el error en cuanto actualizo o hago otra tarea funciona bien, y de repente vuelve a salir el error. aqui les posteo el error completo:





/home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/db/ar/CActiveRecord.php(2264)


2252     private $_model;

2253 

2254     /**

2255      * Constructor.

2256      * @param CActiveRecord $model the model instance

2257      */

2258     public function __construct($model)

2259     {

2260         $this->_model=$model;

2261 

2262         $tableName=$model->tableName();

2263         if(($table=$model->getDbConnection()->getSchema()->getTable($tableName))===null)

2264             throw new CDbException(Yii::t('yii','The table "{table}" for active record class "{class}" cannot be found in the database.',

2265                 array('{class}'=>get_class($model),'{table}'=>$tableName)));

2266         if($table->primaryKey===null)

2267         {

2268             $table->primaryKey=$model->primaryKey();

2269             if(is_string($table->primaryKey) && isset($table->columns[$table->primaryKey]))

2270                 $table->columns[$table->primaryKey]->isPrimaryKey=true;

2271             else if(is_array($table->primaryKey))

2272             {

2273                 foreach($table->primaryKey as $name)

2274                 {

2275                     if(isset($table->columns[$name]))

2276                         $table->columns[$name]->isPrimaryKey=true;


Stack Trace

#0 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/db/ar/CActiveRecord.php(379): CActiveRecordMetaData->__construct(Usuario)

#1 	

–

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/models/Usuario.php(24): CActiveRecord::model("Usuario")


19      * @param string $className active record class name.

20      * @return Usuario the static model class

21      */

22     public static function model($className=__CLASS__)

23     {

24         return parent::model($className);

25     }

26 

27     /**

28      * @return string the associated database table name

29      */


#2 	

–

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/controllers/PagoabonoController.php(28): Usuario::model()


23      * @return array access control rules

24      */

25    public function accessRules()

26     {

27     

28         $model = Usuario::model()->find('username = "' . Yii::app()->user->name . '"');

29 

30         return array(

31             array('allow', // ver

32                 'actions' => array('index', 'view', 'admin'),

33                 'users' => array(($model['ver'] == "SI") ? Yii::app()->user->name : ""),


#3 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CController.php(1145): PagoabonoController->accessRules()

#4 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/filters/CInlineFilter.php(59): CController->filterAccessControl(CFilterChain)

#5 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/filters/CFilterChain.php(131): CInlineFilter->filter(CFilterChain)

#6 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CController.php(292): CFilterChain->run()

#7 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CController.php(266): CController->runActionWithFilters(CInlineAction, array("accessControl"))

#8 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CWebApplication.php(276): CController->run("verificar")

#9 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CWebApplication.php(135): CWebApplication->runController("pagoabono/verificar")

#10 	

+

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/base/CApplication.php(162): CWebApplication->processRequest()

#11 	

–

 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/index.php(13): CApplication->run()


08 defined('YII_DEBUG') or define('YII_DEBUG',true);

09 // specify how many levels of call stack should be shown in each log message

10 defined('YII_TRACE_LEVEL') or define('YII_TRACE_LEVEL',3);

11 

12 require_once($yii);

13 Yii::createWebApplication($config)->run();



Buenos días.

Y supongo q tienes una tabla llamada "usuario" en la base de datos? No "usuarios" ni nada distinto a "usuario".

Un saludo.

eso es correcto: la tabla dice: usuario, como te estoy diciendo el venia funcionando bien fue derepente que empezo a dar problema, 5 a 10 minutos funciona bien de repente tira el crash y despues sigue funcionando bien

Suena como un problema de estabilidad con tu Manejador de DB, es decir, por momentos pierde la conexion.

Que manejador utilizas?, Windows o Unix?

Esta subido en Lunix lo gestiono con Cpanel

Utilizas MYSQL?

El servidor es remoto o local?

Tienes algun log donde se muestre la secuencia de los SQL ejecutados?

Quizas con el LOG se pueda ver por donde va el problema.

Trabajo todo remoto utilizo mysql con engine InnoDB

log del error:


2014/05/05 20:42:08 [error] [system.db.CDbCommand] CDbCommand::fetchAll() failed: SQLSTATE[HY000]: General error: 126 Incorrect key file for table '/ramdisk/mysql/tmp/#sql_3cd_2.MYI'; try to repair it. The SQL statement executed was: SHOW COLUMNS FROM `usuario`.

in /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/components/MultiActiveRecord.php (44)

in /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/models/Usuario.php (22)

in /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/controllers/PagoabonoController.php (28)

2014/05/05 20:42:08 [error] [exception.CDbException] exception 'CDbException' with message 'La tabla "usuario" definida en la clase active record "Usuario" no se ha podido encontrar en la base de datos.' in /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/db/ar/CActiveRecord.php:2264

Stack trace:

#0 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/db/ar/CActiveRecord.php(379): CActiveRecordMetaData->__construct(Object(Usuario))

#1 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/components/MultiActiveRecord.php(44): CActiveRecord::model('Usuario')

#2 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/models/Usuario.php(22): MultiActiveRecord::model('Usuario')

#3 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/protected/controllers/PagoabonoController.php(28): Usuario::model()

#4 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CController.php(1145): PagoabonoController->accessRules()

#5 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/filters/CInlineFilter.php(59): CController->filterAccessControl(Object(CFilterChain))

#6 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/filters/CFilterChain.php(131): CInlineFilter->filter(Object(CFilterChain))

#7 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CController.php(292): CFilterChain->run()

#8 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CController.php(266): CController->runActionWithFilters(Object(CInlineAction), Array)

#9 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CWebApplication.php(276): CController->run('verificar')

#10 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/web/CWebApplication.php(135): CWebApplication->runController('pagoabono/verif...')

#11 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/yii/framework/base/CApplication.php(162): CWebApplication->processRequest()

#12 /home3/forosfd1/public_html/sistemas/pinardelrio2.0/sistema/index.php(13): CApplication->run()

#13 {main}



Espacio disponible del disco?

Tamaño de la BD?

Alguna tabla corrupta (http://dev.mysql.com/doc/refman/5.0/en/repair-table.html)?

Y la tabla se llama "usuario", no "Usuario"?

Linux es case sensitive.

Si te ocurre esto se lo cambias en tu modelo:




public function tableName()

    {

        return 'Usuario';

    }



Aunque si te ocurre de vez en cuando podría ser lo que te comenta Daniel.

Muéstranos el código de tu modelo y asegúrate de que en tu modelo referencias la tabla exactamente igual que como se llama en la base de datos.

Un saludo.

Buenas tardes, lo pudieron resolver?? me sucede lo mismo, agradezco cualquier ayuda!!