Welcome to the LimeSurvey Community Forum

Ask the community, share ideas, and connect with other LimeSurvey users!

Error upgrading from 3.21.4 to 4.1.0

  • wutwut
  • wutwut's Avatar Topic Author
  • Offline
  • New Member
  • New Member
More
4 years 2 months ago #193324 by wutwut
Error upgrading from 3.21.4 to 4.1.0 was created by wutwut
I'm in the process of upgrading Limesurvey all the way from 2.57.1 tot 4.1.0.
First i did an upgrade to the 3.21.4 version without any problems.
However when upgrading to 4.1.0 I receive the following error when upgrading the database:

CDbCommand failed executing the following SQL statement: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xE3\x80\x80?</...' for column `limesurvey`.`lime_question_l10ns`.`question` at row 1903. The SQL statement executed was: INSERT INTO lime_question_l10ns (qid, question, help, language) select qid, question, help, language from lime_questions

Running :
php 7.3,
mysql Ver 15.1 Distrib 5.5.64-MariaDB, for Linux (x86_64)
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 2 months ago - 4 years 2 months ago #193325 by holch
Replied by holch on topic Error upgrading from 3.21.4 to 4.1.0
[strike]The problem should be your database version. You are on 5.5 and LS 4 requires 7.x, as far as I remember. I think Joffm wrote about this in a post here.[/strike]

Sorry, my mistake. The post was about PHP 7, not the database.

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

Last edit: 4 years 2 months ago by holch.
The topic has been locked.
  • holch
  • holch's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 2 months ago #193326 by holch
Replied by holch on topic Error upgrading from 3.21.4 to 4.1.0

I answer at the LimeSurvey forum in my spare time, I'm not a LimeSurvey GmbH employee.
No support via private message.

The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 2 months ago #193334 by DenisChenu
Replied by DenisChenu on topic Error upgrading from 3.21.4 to 4.1.0

wutwut wrote: Running :
php 7.3,
mysql Ver 15.1 Distrib 5.5.64-MariaDB, for Linux (x86_64)

Seems OK for me


wutwut wrote: CDbCommand failed executing the following SQL statement: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xE3\x80\x80?</...' for column `limesurvey`.`lime_question_l10ns`.`question` at row 1903. The SQL statement executed was: INSERT INTO lime_question_l10ns (qid, question, help, language) select qid, question, help, language from lime_questions


Hope you keep a backup ? if yes
it can be great if can report the issue with debug set to 2 before start upgrading, and send the complete HTML file done.

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The topic has been locked.
More
4 years 1 month ago #194475 by Beragatt_218803
Replied by Beragatt_218803 on topic Error upgrading from 3.21.4 to 4.1.0
I get the same error by upgrating from 3.22 to 4.1.6

"Invalid datetime format: 1366 Incorrect string value: '\xE2\x86\x94 5=...' for column `limesurv_test`.`lime_question_l10ns`.`help` at row 839."


Web server
cpsrvd 11.84.0.21
Database client version: libmysql - 5.6.43
PHP extension: mysqliDocumentation curlDocumentation mbstringDocumentation
PHP version: 7.3.6

Please help
The topic has been locked.
More
4 years 1 month ago #194479 by Beragatt_218803
Replied by Beragatt_218803 on topic Error upgrading from 3.21.4 to 4.1.0
debug mode on 2

CDbException
CDbCommand faalde tijdens het uitvoeren van volgend SQL statement: SQLSTATE[22007]: Invalid datetime format: 1366 Incorrect string value: '\xE2\x86\x94 5=...' for column `limesurv_test`.`lime_question_l10ns`.`help` at row 839. The SQL statement executed was: INSERT INTO lime_question_l10ns (qid, question, help, language) select qid, question, help, language from lime_questions

/home/limesurv/public_html/test/framework/db/CDbCommand.php(358)

346 {
347 if($this->_connection->enableProfiling)
348 Yii::endProfile('system.db.CDbCommand.execute('.$this->getText().$par.')','system.db.CDbCommand.execute');
349
350 $errorInfo=$e instanceof PDOException ? $e->errorInfo : null;
351 $message=$e->getMessage();
352 Yii::log(Yii::t('yii','CDbCommand::execute() failed: {error}. The SQL statement executed was: {sql}.',
353 array('{error}'=>$message, '{sql}'=>$this->getText().$par)),CLogger::LEVEL_ERROR,'system.db.CDbCommand');
354
355 if(YII_DEBUG)
356 $message.='. The SQL statement executed was: '.$this->getText().$par;
357
358 throw new CDbException(Yii::t('yii','CDbCommand failed to execute the SQL statement: {error}',
359 array('{error}'=>$message)),(int)$e->getCode(),$errorInfo);
360 }
361 }
362
363 /**
364 * Executes the SQL statement and returns query result.
365 * This method is for executing an SQL query that returns result set.
366 * @param array $params input parameters (name=>value) for the SQL execution. This is an alternative
367 * to {@link bindParam} and {@link bindValue}. If you have multiple input parameters, passing
368 * them in this way can improve the performance. Note that if you pass parameters in this way,
369 * you cannot bind parameters or values using {@link bindParam} or {@link bindValue}, and vice versa.
370 * Please also note that all values are treated as strings in this case, if you need them to be handled as
Stack Trace
#0
– /home/limesurv/public_html/test/application/helpers/update/updatedb_helper.php(2451): CDbCommand->execute()
2446 'question' => "text NOT NULL",
2447 'help' => "text",
2448 'language' => "string(20) NOT NULL"
2449 ), $options);
2450 $oDB->createCommand()->createIndex('{{idx1_question_l10ns}}', '{{question_l10ns}}', , true);
2451 $oDB->createCommand("INSERT INTO {{question_l10ns}} (qid, question, help, language) select qid, question, help, language from {{questions}}")->execute();
2452 /* questions by rename/insert */
2453 if(Yii::app()->db->schema->getTable('{{questions_update400}}')){
2454 $oDB->createCommand()->dropTable('{{questions_update400}}');
2455 }
2456 $oDB->createCommand()->renameTable('{{questions}}', '{{questions_update400}}');
#1
– /home/limesurv/public_html/test/application/helpers/update/update_helper.php(31): db_upgrade_all(359)
26 Yii::app()->loadHelper('update/updatedb');
27 if (isset($subaction) && $subaction == "yes") {
28 $header = Yii::app()->getController()->_getAdminHeader(false, true);
29 $header = preg_replace('/<###begin###>/', '', $header);
30 echo $header;
31 $result = db_upgrade_all(intval($currentDBVersion));
32 if ($result) {
33 $data =
34 '<div class="jumbotron message-box">'.
35 '<h2 class="">'.gT('Success').'</h2>'.
36 '<p class="lead">'.
#2
– /home/limesurv/public_html/test/application/controllers/admin/databaseupdate.php(40): CheckForDBUpgrades("yes")
35 public function db($continue = null)
36 {
37 Yii::app()->loadHelper("update/update");
38 $aData = $aViewUrls = [];
39 if (isset($continue) && $continue == "yes") {
40 $aViewUrls = CheckForDBUpgrades($continue);
41 $aData = false;
42 } else {
43 $aData = true;
44 $aViewUrls = CheckForDBUpgrades();
45 }
#3
unknown(0): databaseupdate->db("yes")
#4
+ /home/limesurv/public_html/test/framework/web/actions/CAction.php(109): ReflectionMethod->invokeArgs(databaseupdate, array("yes"))
#5
+ /home/limesurv/public_html/test/application/core/Survey_Common_Action.php(86): CAction->runWithParamsInternal(databaseupdate, ReflectionMethod, array("continue" => "yes", "sa" => "db"))
#6
+ /home/limesurv/public_html/test/framework/web/CController.php(308): Survey_Common_Action->runWithParams(array("continue" => "yes", "sa" => "db"))
#7
+ /home/limesurv/public_html/test/framework/web/CController.php(286): CController->runAction(databaseupdate)
#8
+ /home/limesurv/public_html/test/framework/web/CController.php(265): CController->runActionWithFilters(databaseupdate, array())
#9
+ /home/limesurv/public_html/test/application/controllers/AdminController.php(165): CController->run("databaseupdate")
#10
+ /home/limesurv/public_html/test/framework/web/CWebApplication.php(282): AdminController->run("databaseupdate")
#11
+ /home/limesurv/public_html/test/framework/web/CWebApplication.php(141): CWebApplication->runController("admin/databaseupdate/sa/db")
#12
+ /home/limesurv/public_html/test/framework/base/CApplication.php(185): CWebApplication->processRequest()
#13
+ /home/limesurv/public_html/test/index.php(195): CApplication->run()
The topic has been locked.
  • DenisChenu
  • DenisChenu's Avatar
  • Offline
  • LimeSurvey Community Team
  • LimeSurvey Community Team
More
4 years 1 month ago #194485 by DenisChenu
Replied by DenisChenu on topic Error upgrading from 3.21.4 to 4.1.0

Assistance on LimeSurvey forum and LimeSurvey core development are on my free time.
I'm not a LimeSurvey GmbH member, professional service on demand , plugin development .
I don't answer to private message.
The topic has been locked.

Lime-years ahead

Online-surveys for every purse and purpose