View Issue Details

This issue affects 1 person(s).
 4
IDProjectCategoryView StatusLast Update
09396Bug reportsInstallationpublic2014-12-10 12:39
Reporterboykov Assigned Toc_schmitz  
PriorityhighSeverityblock 
Status closedResolutionnot fixable 
Product Version2.05+ 
Summary09396: Installation crashes with CDbException
Description

Trying to install LimeSurvey 2.05+ on a Debian 6 server.
I have created a databse and db-user with all privileges.
I can log in and see the empty database with this user.
pdo_mysql 5.1.73is installed
/tmp, /upload and /application/config have 775 permissions

CDbException
The table "{{settings_global}}" for active record class "SettingGlobal" cannot be found in the database.

Stack Trace
#0
+
/report3/framework/db/ar/CActiveRecord.php(411): CActiveRecordMetaData->__construct(SettingGlobal)
#1
+
/report3/framework/db/ar/CActiveRecord.php(677): CActiveRecord->getMetaData()
#2
+
/report3/application/models/LSActiveRecord.php(27): CActiveRecord->hasAttribute("created")
#3
+
/report3/framework/db/ar/CActiveRecord.php(396): LSActiveRecord->behaviors()
#4
+
/report3/application/models/SettingGlobal.php(28): CActiveRecord::model("SettingGlobal")
#5
+
/report3/application/helpers/globalsettings_helper.php(21): SettingGlobal::model()
#6
+
/report3/application/helpers/globalsettings_helper.php(16): injectglobalsettings()
#7
+
/report3/framework/YiiBase.php(320): require("/report3/application/helpe...")
#8
+
/report3/application/core/LSYii_Application.php(182): YiiBase::import("application.helpers.globalsettings_helper", true)
#9
+
/report3/application/core/LSYii_Controller.php(69): LSYii_Application->loadHelper("globalsettings")
#10
+
/report3/application/core/LSYii_Controller.php(37): LSYii_Controller->loadHelper("globalsettings")
#11
+
/report3/framework/web/CWebApplication.php(359): LSYii_Controller->__construct("surveys", null)
#12
+
/report3/framework/web/CWebApplication.php(276): CWebApplication->createController("")
#13
+
/report3/framework/web/CWebApplication.php(141): CWebApplication->runController("")
#14
+
/report3/framework/base/CApplication.php(180): CWebApplication->processRequest()
#15
+
/report3/index.php(200): CApplication->run()

Steps To Reproduce
  1. unzip LimeSurvey 2.05+ build141126
  2. Create database abd db-user with all privileges
  3. Navigate to limesurvey/admin
Additional Information

I attach the complete Stack Trace.

TagsNo tags attached.
Attached Files
CDbException.htm (24,697 bytes)   
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en"><head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>CDbException</title>

<style type="text/css">
/*<![CDATA[*/
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,font,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td{border:0;outline:0;font-size:100%;vertical-align:baseline;background:transparent;margin:0;padding:0;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:none;}
:focus{outline:0;}
ins{text-decoration:none;}
del{text-decoration:line-through;}
table{border-collapse:collapse;border-spacing:0;}

body {
	font: normal 9pt "Verdana";
	color: #000;
	background: #fff;
}

h1 {
	font: normal 18pt "Verdana";
	color: #f00;
	margin-bottom: .5em;
}

h2 {
	font: normal 14pt "Verdana";
	color: #800000;
	margin-bottom: .5em;
}

h3 {
	font: bold 11pt "Verdana";
}

pre {
	font: normal 11pt Menlo, Consolas, "Lucida Console", Monospace;
}

pre span.error {
	display: block;
	background: #fce3e3;
}

pre span.ln {
	color: #999;
	padding-right: 0.5em;
	border-right: 1px solid #ccc;
}

pre span.error-ln {
	font-weight: bold;
}

.container {
	margin: 1em 4em;
}

.version {
	color: gray;
	font-size: 8pt;
	border-top: 1px solid #aaa;
	padding-top: 1em;
	margin-bottom: 1em;
}

.message {
	color: #000;
	padding: 1em;
	font-size: 11pt;
	background: #f3f3f3;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	border-radius: 10px;
	margin-bottom: 1em;
	line-height: 160%;
}

.source {
	margin-bottom: 1em;
}

.code pre {
	background-color: #ffe;
	margin: 0.5em 0;
	padding: 0.5em;
	line-height: 125%;
	border: 1px solid #eee;
}

.source .file {
	margin-bottom: 1em;
	font-weight: bold;
}

.traces {
	margin: 2em 0;
}

.trace {
	margin: 0.5em 0;
	padding: 0.5em;
}

.trace.app {
	border: 1px dashed #c00;
}

.trace .number {
	text-align: right;
	width: 2em;
	padding: 0.5em;
}

.trace .content {
	padding: 0.5em;
}

.trace .plus,
.trace .minus {
	display:inline;
	vertical-align:middle;
	text-align:center;
	border:1px solid #000;
	color:#000;
	font-size:10px;
	line-height:10px;
	margin:0;
	padding:0 1px;
	width:10px;
	height:10px;
}

.trace.collapsed .minus,
.trace.expanded .plus,
.trace.collapsed pre {
	display: none;
}

.trace-file {
	cursor: pointer;
	padding: 0.2em;
}

.trace-file:hover {
	background: #f0ffff;
}
/*]]>*/
</style>
</head>

<body>
<div class="container">
	<h1>CDbException</h1>

	<p class="message">
		The table "{{settings_global}}" for active record class "SettingGlobal" cannot be found in the database.	</p>

	<div class="source">
		<p class="file">/var/www/ds1134/https.www.buzzador.com/report3/framework/db/ar/CActiveRecord.php(2362)</p>
		<div class="code"><pre><span class="ln">2350</span> 
<span class="ln">2351</span>     /**
<span class="ln">2352</span>      * Constructor.
<span class="ln">2353</span>      * @param CActiveRecord $model the model instance
<span class="ln">2354</span>      * @throws CDbException if specified table for active record class cannot be found in the database
<span class="ln">2355</span>      */
<span class="ln">2356</span>     public function __construct($model)
<span class="ln">2357</span>     {
<span class="ln">2358</span>         $this-&gt;_modelClassName=get_class($model);
<span class="ln">2359</span> 
<span class="ln">2360</span>         $tableName=$model-&gt;tableName();
<span class="ln">2361</span>         if(($table=$model-&gt;getDbConnection()-&gt;getSchema()-&gt;getTable($tableName))===null)
<span class="error"><span class="ln error-ln">2362</span>             throw new CDbException(Yii::t('yii','The table "{table}" for active record class "{class}" cannot be found in the database.',
</span><span class="ln">2363</span>                 array('{class}'=&gt;$this-&gt;_modelClassName,'{table}'=&gt;$tableName)));
<span class="ln">2364</span>         if($table-&gt;primaryKey===null)
<span class="ln">2365</span>         {
<span class="ln">2366</span>             $table-&gt;primaryKey=$model-&gt;primaryKey();
<span class="ln">2367</span>             if(is_string($table-&gt;primaryKey) &amp;&amp; isset($table-&gt;columns[$table-&gt;primaryKey]))
<span class="ln">2368</span>                 $table-&gt;columns[$table-&gt;primaryKey]-&gt;isPrimaryKey=true;
<span class="ln">2369</span>             elseif(is_array($table-&gt;primaryKey))
<span class="ln">2370</span>             {
<span class="ln">2371</span>                 foreach($table-&gt;primaryKey as $name)
<span class="ln">2372</span>                 {
<span class="ln">2373</span>                     if(isset($table-&gt;columns[$name]))
<span class="ln">2374</span>                         $table-&gt;columns[$name]-&gt;isPrimaryKey=true;
</pre></div>	</div>

	<div class="traces">
		<h2>Stack Trace</h2>
				<table style="width:100%;">
						<tbody><tr class="trace core expanded">
			<td class="number">
				#0			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/db/ar/CActiveRecord.php(411): <strong>CActiveRecordMetaData</strong>-&gt;<strong>__construct</strong>(SettingGlobal)				</div>

				<div class="code"><pre><span class="ln">406</span>     {
<span class="ln">407</span>         $className=get_class($this);
<span class="ln">408</span>         if(!array_key_exists($className,self::$_md))
<span class="ln">409</span>         {
<span class="ln">410</span>             self::$_md[$className]=null; // preventing recursive invokes of {@link getMetaData()} via {@link __get()}
<span class="error"><span class="ln error-ln">411</span>             self::$_md[$className]=new CActiveRecordMetaData($this);
</span><span class="ln">412</span>         }
<span class="ln">413</span>         return self::$_md[$className];
<span class="ln">414</span>     }
<span class="ln">415</span> 
<span class="ln">416</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#1			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/db/ar/CActiveRecord.php(677): <strong>CActiveRecord</strong>-&gt;<strong>getMetaData</strong>()				</div>

				<div class="code"><pre><span class="ln">672</span>      * @param string $name attribute name
<span class="ln">673</span>      * @return boolean whether this AR has the named attribute (table column).
<span class="ln">674</span>      */
<span class="ln">675</span>     public function hasAttribute($name)
<span class="ln">676</span>     {
<span class="error"><span class="ln error-ln">677</span>         return isset($this-&gt;getMetaData()-&gt;columns[$name]);
</span><span class="ln">678</span>     }
<span class="ln">679</span> 
<span class="ln">680</span>     /**
<span class="ln">681</span>      * Returns the named attribute value.
<span class="ln">682</span>      * If this is a new record and the attribute is not set before,
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#2			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/models/LSActiveRecord.php(27): <strong>CActiveRecord</strong>-&gt;<strong>hasAttribute</strong>("created")				</div>

				<div class="code"><pre><span class="ln">22</span>      * @see CTimestampBehavior
<span class="ln">23</span>      * @see PluginEventBehavior
<span class="ln">24</span>      * @return array
<span class="ln">25</span>      */
<span class="ln">26</span>     public function behaviors(){
<span class="error"><span class="ln error-ln">27</span>         $sCreateFieldName=($this-&gt;hasAttribute('created')?'created':null);
</span><span class="ln">28</span>         $sUpdateFieldName=($this-&gt;hasAttribute('modified')?'modified':null);
<span class="ln">29</span>         $sDriverName = Yii::app()-&gt;db-&gt;getDriverName(); 
<span class="ln">30</span>         if ($sDriverName=='sqlsrv' || $sDriverName=='dblib')
<span class="ln">31</span>         {
<span class="ln">32</span>             $sTimestampExpression=new CDbExpression('GETDATE()');
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#3			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/db/ar/CActiveRecord.php(396): <strong>LSActiveRecord</strong>-&gt;<strong>behaviors</strong>()				</div>

				<div class="code"><pre><span class="ln">391</span>         if(isset(self::$_models[$className]))
<span class="ln">392</span>             return self::$_models[$className];
<span class="ln">393</span>         else
<span class="ln">394</span>         {
<span class="ln">395</span>             $model=self::$_models[$className]=new $className(null);
<span class="error"><span class="ln error-ln">396</span>             $model-&gt;attachBehaviors($model-&gt;behaviors());
</span><span class="ln">397</span>             return $model;
<span class="ln">398</span>         }
<span class="ln">399</span>     }
<span class="ln">400</span> 
<span class="ln">401</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#4			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/models/SettingGlobal.php(28): <strong>CActiveRecord</strong>::<strong>model</strong>("SettingGlobal")				</div>

				<div class="code"><pre><span class="ln">23</span>      * @param string $class
<span class="ln">24</span>      * @return CActiveRecord
<span class="ln">25</span>      */
<span class="ln">26</span>     public static function model($class = __CLASS__)
<span class="ln">27</span>     {
<span class="error"><span class="ln error-ln">28</span>         return parent::model($class);
</span><span class="ln">29</span>     }
<span class="ln">30</span> 
<span class="ln">31</span>     /**
<span class="ln">32</span>      * Returns the setting's table name to be used by the model
<span class="ln">33</span>      *
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#5			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/helpers/globalsettings_helper.php(21): <strong>SettingGlobal</strong>::<strong>model</strong>()				</div>

				<div class="code"><pre><span class="ln">16</span> injectglobalsettings();
<span class="ln">17</span> 
<span class="ln">18</span> 
<span class="ln">19</span> function injectglobalsettings()
<span class="ln">20</span> {
<span class="error"><span class="ln error-ln">21</span>     $settings = SettingGlobal::model()-&gt;findAll();
</span><span class="ln">22</span> 
<span class="ln">23</span>     //if ($dbvaluearray!==false)
<span class="ln">24</span>     if (count($settings) &gt; 0)
<span class="ln">25</span>     {
<span class="ln">26</span>         //foreach  ($dbvaluearray as $setting)
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#6			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/helpers/globalsettings_helper.php(16): <strong>injectglobalsettings</strong>()				</div>

				<div class="code"><pre><span class="ln">11</span>  * See COPYRIGHT.php for copyright notices and details.
<span class="ln">12</span>  *
<span class="ln">13</span>  */
<span class="ln">14</span> //Ensure script is not run directly, avoid path disclosure
<span class="ln">15</span> //if (!isset($homedir) || isset($_REQUEST['$homedir'])) {die("Cannot run this script directly");}
<span class="error"><span class="ln error-ln">16</span> injectglobalsettings();
</span><span class="ln">17</span> 
<span class="ln">18</span> 
<span class="ln">19</span> function injectglobalsettings()
<span class="ln">20</span> {
<span class="ln">21</span>     $settings = SettingGlobal::model()-&gt;findAll();
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#7			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/YiiBase.php(320): <strong>require</strong>("/var/www/ds1134/https.www.buzzador.com/report3/application/helpe...")				</div>

				<div class="code"><pre><span class="ln">315</span>             if($isClass)
<span class="ln">316</span>             {
<span class="ln">317</span>                 if($forceInclude)
<span class="ln">318</span>                 {
<span class="ln">319</span>                     if(is_file($path.'.php'))
<span class="error"><span class="ln error-ln">320</span>                         require($path.'.php');
</span><span class="ln">321</span>                     else
<span class="ln">322</span>                         throw new CException(Yii::t('yii','Alias "{alias}" is invalid. Make sure it points to an existing PHP file and the file is readable.',array('{alias}'=&gt;$alias)));
<span class="ln">323</span>                     self::$_imports[$alias]=$className;
<span class="ln">324</span>                 }
<span class="ln">325</span>                 else
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#8			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/core/LSYii_Application.php(182): <strong>YiiBase</strong>::<strong>import</strong>("application.helpers.globalsettings_helper", true)				</div>

				<div class="code"><pre><span class="ln">177</span>     * @param string $helper
<span class="ln">178</span>     * @return void
<span class="ln">179</span>     */
<span class="ln">180</span>     public function loadHelper($helper)
<span class="ln">181</span>     {
<span class="error"><span class="ln error-ln">182</span>         Yii::import('application.helpers.' . $helper . '_helper', true);
</span><span class="ln">183</span>     }
<span class="ln">184</span> 
<span class="ln">185</span>     /**
<span class="ln">186</span>     * Loads a library
<span class="ln">187</span>     *
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#9			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/core/LSYii_Controller.php(69): <strong>LSYii_Application</strong>-&gt;<strong>loadHelper</strong>("globalsettings")				</div>

				<div class="code"><pre><span class="ln">64</span>      * @param string $helper
<span class="ln">65</span>      * @return void
<span class="ln">66</span>      */
<span class="ln">67</span>     public function loadHelper($helper)
<span class="ln">68</span>     {
<span class="error"><span class="ln error-ln">69</span>         Yii::app()-&gt;loadHelper($helper);
</span><span class="ln">70</span>     }
<span class="ln">71</span> 
<span class="ln">72</span>     /**
<span class="ln">73</span>      * Loads a library
<span class="ln">74</span>      *
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#10			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/application/core/LSYii_Controller.php(37): <strong>LSYii_Controller</strong>-&gt;<strong>loadHelper</strong>("globalsettings")				</div>

				<div class="code"><pre><span class="ln">32</span>         parent::__construct($id, $module);
<span class="ln">33</span>         $this-&gt;_checkInstallation();
<span class="ln">34</span> 
<span class="ln">35</span>         Yii::app()-&gt;session-&gt;init();
<span class="ln">36</span>         $this-&gt;loadLibrary('LS.LS');
<span class="error"><span class="ln error-ln">37</span>         $this-&gt;loadHelper('globalsettings');
</span><span class="ln">38</span>         $this-&gt;loadHelper('common');
<span class="ln">39</span>         $this-&gt;loadHelper('expressions.em_manager');
<span class="ln">40</span>         $this-&gt;loadHelper('replacements');
<span class="ln">41</span>         $this-&gt;_init();
<span class="ln">42</span>     }
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#11			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/web/CWebApplication.php(359): <strong>LSYii_Controller</strong>-&gt;<strong>__construct</strong>("surveys", null)				</div>

				<div class="code"><pre><span class="ln">354</span>                     require($classFile);
<span class="ln">355</span>                 if(class_exists($className,false) &amp;&amp; is_subclass_of($className,'CController'))
<span class="ln">356</span>                 {
<span class="ln">357</span>                     $id[0]=strtolower($id[0]);
<span class="ln">358</span>                     return array(
<span class="error"><span class="ln error-ln">359</span>                         new $className($controllerID.$id,$owner===$this?null:$owner),
</span><span class="ln">360</span>                         $this-&gt;parseActionParams($route),
<span class="ln">361</span>                     );
<span class="ln">362</span>                 }
<span class="ln">363</span>                 return null;
<span class="ln">364</span>             }
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#12			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/web/CWebApplication.php(276): <strong>CWebApplication</strong>-&gt;<strong>createController</strong>("")				</div>

				<div class="code"><pre><span class="ln">271</span>      * @param string $route the route of the current request. See {@link createController} for more details.
<span class="ln">272</span>      * @throws CHttpException if the controller could not be created.
<span class="ln">273</span>      */
<span class="ln">274</span>     public function runController($route)
<span class="ln">275</span>     {
<span class="error"><span class="ln error-ln">276</span>         if(($ca=$this-&gt;createController($route))!==null)
</span><span class="ln">277</span>         {
<span class="ln">278</span>             list($controller,$actionID)=$ca;
<span class="ln">279</span>             $oldController=$this-&gt;_controller;
<span class="ln">280</span>             $this-&gt;_controller=$controller;
<span class="ln">281</span>             $controller-&gt;init();
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#13			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/web/CWebApplication.php(141): <strong>CWebApplication</strong>-&gt;<strong>runController</strong>("")				</div>

				<div class="code"><pre><span class="ln">136</span>             foreach(array_splice($this-&gt;catchAllRequest,1) as $name=&gt;$value)
<span class="ln">137</span>                 $_GET[$name]=$value;
<span class="ln">138</span>         }
<span class="ln">139</span>         else
<span class="ln">140</span>             $route=$this-&gt;getUrlManager()-&gt;parseUrl($this-&gt;getRequest());
<span class="error"><span class="ln error-ln">141</span>         $this-&gt;runController($route);
</span><span class="ln">142</span>     }
<span class="ln">143</span> 
<span class="ln">144</span>     /**
<span class="ln">145</span>      * Registers the core application components.
<span class="ln">146</span>      * This method overrides the parent implementation by registering additional core components.
</pre></div>			</td>
		</tr>
						<tr class="trace core expanded">
			<td class="number">
				#14			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/framework/base/CApplication.php(180): <strong>CWebApplication</strong>-&gt;<strong>processRequest</strong>()				</div>

				<div class="code"><pre><span class="ln">175</span>     public function run()
<span class="ln">176</span>     {
<span class="ln">177</span>         if($this-&gt;hasEventHandler('onBeginRequest'))
<span class="ln">178</span>             $this-&gt;onBeginRequest(new CEvent($this));
<span class="ln">179</span>         register_shutdown_function(array($this,'end'),0,false);
<span class="error"><span class="ln error-ln">180</span>         $this-&gt;processRequest();
</span><span class="ln">181</span>         if($this-&gt;hasEventHandler('onEndRequest'))
<span class="ln">182</span>             $this-&gt;onEndRequest(new CEvent($this));
<span class="ln">183</span>     }
<span class="ln">184</span> 
<span class="ln">185</span>     /**
</pre></div>			</td>
		</tr>
						<tr class="trace app expanded">
			<td class="number">
				#15			</td>
			<td class="content">
				<div class="trace-file">
											<div class="plus">+</div>
						<div class="minus">–</div>
										&nbsp;/var/www/ds1134/https.www.buzzador.com/report3/index.php(200): <strong>CApplication</strong>-&gt;<strong>run</strong>()				</div>

				<div class="code"><pre><span class="ln">195</span>         die (sprintf('%s should be writable by the webserver (755 or 775).', $runtimePath));
<span class="ln">196</span>     }
<span class="ln">197</span> }
<span class="ln">198</span> 
<span class="ln">199</span> 
<span class="error"><span class="ln error-ln">200</span> Yii::createApplication('LSYii_Application', $config)-&gt;run();
</span><span class="ln">201</span> 
<span class="ln">202</span> /* End of file index.php */
<span class="ln">203</span> /* Location: ./index.php */
</pre></div>			</td>
		</tr>
				</tbody></table>
	</div>

	<div class="version">
		2014-12-09 18:48:41 Apache/2.2.9 (Debian) PHP/5.3.3-7+squeeze22 with Suhosin-Patch mod_ssl/2.2.9 OpenSSL/0.9.8o <a href="http://www.yiiframework.com/">Yii Framework</a>/1.1.15	</div>
</div>

<script type="text/javascript">
/*<![CDATA[*/
var traceReg = new RegExp("(^|\\s)trace-file(\\s|$)");
var collapsedReg = new RegExp("(^|\\s)collapsed(\\s|$)");

var e = document.getElementsByTagName("div");
for(var j=0,len=e.length;j<len;j++){
	if(traceReg.test(e[j].className)){
		e[j].onclick = function(){
			var trace = this.parentNode.parentNode;
			if(collapsedReg.test(trace.className))
				trace.className = trace.className.replace("collapsed", "expanded");
			else
				trace.className = trace.className.replace("expanded", "collapsed");
		}
	}
}
/*]]>*/
</script>



</body></html>
CDbException.htm (24,697 bytes)   
Bug heat4
Complete LimeSurvey version number (& build)2.05+ build141126
I will donate to the project if issue is resolvedNo
BrowserFirefox Nightly
Database type & versionMySQL 5.0.51
Server OS (if known)Debian 6 Squeeze
Webserver software & version (if known)Apache/2.2.9 (Debian)
PHP VersionPHP/5.3.3
Git branch / Pull Request URL

Users monitoring this issue

There are no users monitoring this issue.

Activities

c_schmitz

c_schmitz

2014-12-10 09:23

administrator   ~31231

Is there a config.php in /application/config/ ?

boykov

boykov

2014-12-10 10:18

reporter   ~31232

Created config.php based on config-sample-mysql.php.
This is my conecction string:
'connectionString' => 'mysql:host=localhost;port=3306;dbname=report3'

I have also tried entering mysql root user in my config, same error.

I reproduced the issue on another production server: Debian 7, MySQL 5.5.38, PHP 5.4.4

Both production servers are running a bunch of other php/mysql aplications without a problem (drupal, LS 1.92 etc)

c_schmitz

c_schmitz

2014-12-10 10:37

administrator   ~31234

Why do you create the config.php? Where did you get the impression you need to do that?

See https://manual.limesurvey.org/Installation

boykov

boykov

2014-12-10 11:13

reporter   ~31235

The manual doesn't even mention where to enter databse configuration. Please improve the installation manual.

There is unwritten convention in the Unix/Linux world about sample config files with a suffix in the filename. You copy a sample config and remove the suffix.

I have configured config-sample-mysql.php and this resolved the issue.

Just out of curiosity, what happens if I enter valid db-configurations in all sample configs:

  • config-sample-dblib.php
  • config-sample-mysql.php
  • config-sample-pgsql.php
  • config-sample-sqlsrv.php

Which one will the application use?

c_schmitz

c_schmitz

2014-12-10 12:39

administrator   ~31236

Well, thank god we are not the Linux/Unix world.

Anyway, you did it wrong. Don't mess around with the configs if you don't know what you are doing. Instead use the installer like everyone else (as outlined in the documentation).

Issue History

Date Modified Username Field Change
2014-12-09 20:00 boykov New Issue
2014-12-09 20:00 boykov File Added: CDbException.htm
2014-12-10 09:23 c_schmitz Note Added: 31231
2014-12-10 10:18 boykov Note Added: 31232
2014-12-10 10:37 c_schmitz Note Added: 31234
2014-12-10 11:13 boykov Note Added: 31235
2014-12-10 12:39 c_schmitz Note Added: 31236
2014-12-10 12:39 c_schmitz Status new => closed
2014-12-10 12:39 c_schmitz Assigned To => c_schmitz
2014-12-10 12:39 c_schmitz Resolution open => not fixable