View Issue Details

This bug affects 1 person(s).
 4
IDProjectCategoryView StatusLast Update
12799Bug reportsInstallationpublic2017-10-17 12:13
ReporterDenisChenu Assigned To 
PrioritynoneSeverityminor 
Status closedResolutionduplicate 
Product Version3.0.0-beta.x 
Summary12799: Error when update from 2.6lts
Description

When update from a 2.6lts (and maybe a 2.71) : La table « limeliste_templates » n'a pas de colonne « name ».

Steps To Reproduce

Copy a 2.6db, use it in installer.

Additional Information

There are a strange part when we have error, see HTML file

TagsNo tags attached.
Attached Files
ErrorWhenUpdate.html (8,782 bytes)   
<!DOCTYPE html>
<html lang="fr" dir="ltr"  >
<head>
    <meta http-equiv="content-type" content="text/html; charset=UTF-8" />
    <meta http-equiv="X-UA-Compatible" content="IE=edge" />

    <!-- Assets load -->

    <!--
        Notice to developers :


        If you turn debug mode on, the asset manager will be off.
        If you turn degug mode off, the asset manager will be on.

        Without the asset manager, the CSS/JS files are published from their real url (eg: http://yourlimesurvey.url/scripts/admin/admin_core.js)
        So, once a browser loaded once those files, it cache it, and don't load it anymore.
        Then, if you change some css/js files, final user must clean its browser cache to get the new version of the cache.
        This was the old LS behaviour, if debug mode is on, you'll have this very behaviour

        The asset manager resolve the browser cache problem. It copy the css/js files to a tmp directory before publishing it:
        http://yourlimesurvey.url/tmp/assets/e929b9d4/admin_core.js

        For admin GUI, the asset manager works on a base of a "file by file" : each single css/js file is published as a single asset.
        So if you touch any css/js file published via the asset (updating its date of modification), the asset manager will AUTOMATICALLY create a new tmp directory:
        http://yourlimesurvey.url/tmp/assets/eb139b88/admin_core.js

        Then, the browser will automatically reload the file, and the final user don't need to refresh its cache.
        You should never have to delete the tmp/assets directory. You can do it to free some space on your server, but that all.

        notice: the css/js files from third party extension use the package system. It means that the asset manager will publish them on the base of the directory logic.
        So, if you update any css/js file from a third party extension, make sure that the modification date of the root directory is updated.
    -->

                <!-- Debug mode is off, so the asset manager will be used-->
    
        <title>Liste des questions de LimeSurvey</title>
    <link rel="shortcut icon" href="/develop/assets/styles-admin/favicon.ico" type="image/x-icon" />
    <link rel="icon" href="/develop/assets/styles-admin/favicon.ico" type="image/x-icon" />
            </head>
<body>
    <div id="beginScripts">
        <###begin###>
    </div>
<!-- Loading wrapper -->
<div id='ls-loading'>
    <span id='ls-loading-spinner' class='fa fa-spinner fa-spin fa-4x'></span>
    <span class='sr-only'>Loading</span>
</div>


<script type='text/javascript'>
var frameSrc = "/login";
    </script>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/c6119d55/jquery-ui.structure.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/5883da5/css/font-awesome.min.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/23879585/bootstrap.min.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/23879585/yiistrap.min.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/184a29a4/css/bootstrap-switch.min.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/5366a97c/css/select2.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/5366a97c/css/select2-bootstrap.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/e39630b0/css/bootstrap-datetimepicker.min.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/d81b4c16/build/lsadminpanel.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/lime-admin-common.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/lime-admin-colors.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/fonts.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/statistics.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/jcarousel.responsive.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/attributeMap.css" />
<link rel="stylesheet" type="text/css" href="/develop/tmp/assets/feea59c5/css/attributeMapToken.css" />
<script type="text/javascript" src="/develop/tmp/assets/4fdecfe7/jquery-3.1.1.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/4fdecfe7/jquery-migrate-3.0.0.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/c6119d55/jquery-ui.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/999cd7b7/js.cookie.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/23879585/bootstrap.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/efd5146c/moment-with-locales.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/184a29a4/js/bootstrap-switch.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/5366a97c/js/select2.full.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/e39630b0/js/bootstrap-datetimepicker.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/f1d6bb4c/pjax.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/29df6611/ckeditor.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/ab4db192/ckeditoradditions.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/feea59c5/scripts/notify.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/feea59c5/scripts/save.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/feea59c5/scripts/panelclickable.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/feea59c5/scripts/panelsanimation.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/feea59c5/scripts/jquery.jcarousel.min.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/feea59c5/scripts/jcarousel.responsive.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/dd0d71cc/admin_core.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/3cf4200e/notifications.js" class="headScriptTag"></script>
<script type="text/javascript" src="/develop/tmp/assets/2a677060/script.js" class="headScriptTag"></script>
<script type="text/javascript">
/*<![CDATA[*/

           LS.globalUserId = "";
            
LS.data = {"baseUrl":"https:\/\/testing.sondages.pro\/develop","showScriptName":true,"urlFormat":"path","adminImageUrl":"\/develop\/assets\/styles-admin\/Sea_Green\/images\/","csrfToken":"ZEJfaXluem9jaEtPUzFCUlJkNDVyR3RQNVl1NkdPS26NiiJkmGMooz6h-DBjINhYlixJ4_kO6pPwQRSkvjH6Qw==","language":"fr","replacementFields":{"path":"\/develop\/index.php\/admin\/limereplacementfields\/sa\/index"}};
LS.lang = {};
$.ajaxSetup({data: {YII_CSRF_TOKEN: LS.data.csrfToken}});
/*]]>*/
</script>
<div class="container-fluid">
    <div class="row">
        <div id="notif-container" class="col-sm-12 content-right" style="z-index: 999">
                    </div>
    </div>
</div>
                    <!-- Full page, started in Survey_Common_Action::render_wrapped_template() -->
                        <div class="container-fluid full-page-wrapper" id="in_survey_common_action">
                            <div class="alert alert-danger flash-error">Erreur non récupérable durant la mise à jour. Détails de cette erreur :<p>La table « limeliste_templates » n'a pas de colonne « name ».</p><br /></div>
<p><a href='/develop/index.php/admin/databaseupdate/sa/db'>Veuillez corriger cette erreur dans la base de données et recommencer.</a></p></div> </div><script type="text/javascript" src="/develop/tmp/assets/d81b4c16/build/lsadminpanel.min.js"></script>
<script type="text/javascript" src="/develop/tmp/assets/d81b4c16/lib/surveysettings.js"></script>
<script type="text/javascript">
/*<![CDATA[*/
jQuery('body').popover({'selector':'a\x5Brel\x3Dpopover\x5D'});
jQuery('body').tooltip({'selector':'a\x5Brel\x3Dtooltip\x5D'});
jQuery('body').popover({'selector':'a\x5Brel\x3Dpopover\x5D'});
jQuery('body').tooltip({'selector':'a\x5Brel\x3Dtooltip\x5D'});
/*]]>*/
</script>
</body></html>
ErrorWhenUpdate.html (8,782 bytes)   
Bug heat4
Complete LimeSurvey version number (& build)201710177777777
I will donate to the project if issue is resolvedNo
Browsernot relevant
Database type & versionmysql
Server OS (if known)debian
Webserver software & version (if known)apache
PHP VersionPHP5.6

Relationships

duplicate of 12588 closedc_schmitz Upgrade from 3.0.0-beta.1 (or 2.6lts) to 3.0.0-beta.2 fails with db error 

Users monitoring this issue

There are no users monitoring this issue.

Activities

DenisChenu

DenisChenu

2017-10-17 11:02

developer   ~44705

After the error : DB version : 263 then lesser than 298 or 304 .

And still at 263.

Issue was : $surveys = Survey::model()->findAll(); https://github.com/LimeSurvey/LimeSurvey/blob/develop/application/helpers/update/updatedb_helper.php#L118

2 solution : fix model (test if template table was up to date) or fix updater

DenisChenu

DenisChenu

2017-10-17 11:04

developer   ~44706

Adding manually the name column in template :
CDbCommand n'a pas pu exécuter la commande SQL: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'sp_test2_develop.limeliste_boxes' doesn't exist
DB was at 294

DenisChenu

DenisChenu

2017-10-17 11:07

developer   ~44707

Last edited: 2017-10-17 11:12

But real DB is 296 (update are not done in commit), fix in 5 minutes (fixed)

But issue is in upgradeTemplateTables298 : {{boxes}} not created (and i think it's an insert and not an update)

fvanderstarre

fvanderstarre

2017-10-17 12:09

reporter   ~44708

See also issue 12588

Issue History

Date Modified Username Field Change
2017-10-17 10:51 DenisChenu New Issue
2017-10-17 10:51 DenisChenu File Added: Capture du 2017-10-17 10-48-14.png
2017-10-17 10:51 DenisChenu File Added: ErrorWhenUpdate.html
2017-10-17 11:02 DenisChenu Note Added: 44705
2017-10-17 11:04 DenisChenu Note Added: 44706
2017-10-17 11:07 DenisChenu Note Added: 44707
2017-10-17 11:12 DenisChenu Note Edited: 44707
2017-10-17 12:09 fvanderstarre Note Added: 44708
2017-10-17 12:12 DenisChenu Relationship added duplicate of 12588
2017-10-17 12:13 DenisChenu Status new => closed
2017-10-17 12:13 DenisChenu Resolution open => duplicate