Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

fatal error during upgrade to 2.14.0 #8309

Closed
propertunist opened this issue Jul 9, 2015 · 11 comments
Closed

fatal error during upgrade to 2.14.0 #8309

propertunist opened this issue Jul 9, 2015 · 11 comments
Labels
worksforme The issue cannot be reproduced and things work as intended.

Comments

@propertunist
Copy link

i upgraded to the release candidate for 2.14.0, not noticing fully that this was a beta candidate (i did not elect to receive betas).
during the automatic upgrade i was forwarded to an error page that read:

An exception has been thrown during the rendering of a template ("!important is undefined: failed at `!important;` line: 7910"winking smiley in "@CoreUpdater/runUpdaterAndExit_welcome.twig" at line 8.

see more info here: http://forum.piwik.org/read.php?2,127826

i have since manually downloaded the files and over-written the ones on my server but this has not resolved the issue. i also went to trigger a re-upgrade of the database, but that made no difference.
there are no messages in the php log that are relevant to piwik.
so for now, piwik is not functional.

@mattab
Copy link
Member

mattab commented Jul 9, 2015

Hi @propertunist

can you paste here the content of your file plugins/CoreUpdater/templates/runUpdaterAndExit_welcome.twig ?

Also can you paste the content of config/config.ini.php all the lines starting with Plugins[] ?

@propertunist
Copy link
Author

aloha!
sure, here's the twig file:

{% extends '@CoreUpdater/layout.twig' %}

{% block content %}

    <div class="header">
        <h1>{{ 'CoreUpdater_DatabaseUpgradeRequired'|translate }}</h1>
        <p>{{ 'CoreUpdater_YourDatabaseIsOutOfDate'|translate }}</p>
        {{ postEvent('Template.topBar')|raw }}
    </div>

    <div class="content text-left">

        {% set helpMessage %}
            {{ 'CoreUpdater_HelpMessageContent'|translate('<a target="_blank" href="?module=Proxy&action=redirect&url=http://piwik.org/faq/">','</a>','</li><li>')|raw }}
        {% endset %}

        {% if coreError %}
            <div class="alert alert-danger">
                {{ 'CoreUpdater_CriticalErrorDuringTheUpgradeProcess'|translate }}
                {% for message in errorMessages %}
                    <br/><strong>{{ message|raw }}</strong>
                {% endfor %}
            </div>
            <p>{{ 'CoreUpdater_HelpMessageIntroductionWhenError'|translate }}</p>
            <ul>
                <li>{{ helpMessage|raw }}</li>
            </ul>
        {% else %}

            {% if coreToUpdate or pluginNamesToUpdate|length > 0 or dimensionsToUpdate|length > 0 %}
                {% if coreToUpdate %}
                    <p>{{ 'CoreUpdater_PiwikWillBeUpgradedFromVersionXToVersionY'|translate(current_piwik_version,new_piwik_version) }}</p>
                {% endif %}

                {% if pluginNamesToUpdate|length > 0 %}
                    {% set listOfPlugins=pluginNamesToUpdate|join(', ') %}
                    <p>{{ 'CoreUpdater_TheFollowingPluginsWillBeUpgradedX'|translate(listOfPlugins) }}</p>
                {% endif %}

                {% if dimensionsToUpdate|length > 0 %}
                    {% set listOfDimensions=dimensionsToUpdate|join(', ') %}
                    <p>{{ 'CoreUpdater_TheFollowingDimensionsWillBeUpgradedX'|translate(listOfDimensions) }}</p>
                {% endif %}

                <h2>{{ 'CoreUpdater_NoteForLargePiwikInstances'|translate }}</h2>
                {% if isMajor %}
                    <div class="alert alert-danger">
                        {{ 'CoreUpdater_MajorUpdateWarning1'|translate }}
                        {{ 'CoreUpdater_MajorUpdateWarning2'|translate }}
                    </div>
                {% endif %}
                <p>{{ 'CoreUpdater_TheUpgradeProcessMayFailExecuteCommand'|translate('') }}</p>
                <pre>{{ commandUpgradePiwik }}</pre>
                <p>{{ 'CoreUpdater_HighTrafficPiwikServerEnableMaintenance'|translate('<a target="_blank" href="?module=Proxy&action=redirect&url=http%3A%2F%2Fpiwik.org%2Ffaq%2Fhow-to%2F%23faq_111">', '</a>')|raw }}</p>
                <p>{{ 'CoreUpdater_YouCouldManuallyExecuteSqlQueries'|translate }}</p>
                <p><a href="#" id="showSql">› {{ 'CoreUpdater_ClickHereToViewSqlQueries'|translate }}</a></p>
                <div id="sqlQueries" style="display:none;">
                    <pre># {{ 'CoreUpdater_NoteItIsExpectedThatQueriesFail'|translate }}<br/>{% for query in queries %}{{ query }}<br/>{% endfor %}</pre>
                </div>

                <h2>{{ 'CoreUpdater_ReadyToGo'|translate }}</h2>
                <p>{{ 'CoreUpdater_TheUpgradeProcessMayTakeAWhilePleaseBePatient'|translate }}</p>
            {% endif %}

            {% if warningMessages|length > 0 %}
                <div class="alert alert-info">
                    {{ warningMessages[0] }}
                    {% if warningMessages|length > 1 %}
                        <button id="more-results" class="ui-button ui-state-default ui-corner-all">{{ 'General_Details'|translate }}</button>
                    {% endif %}
                </div>
            {% endif %}

            {% if coreToUpdate or pluginNamesToUpdate|length > 0 or dimensionsToUpdate|length > 0  %}
                <form action="index.php" id="upgradeCorePluginsForm" class="clearfix" data-updating="{{ 'CoreUpdater_Updating'|translate }}...">
                    <input type="hidden" name="updateCorePlugins" value="1"/>
                    {% if queries|length == 1 %}
                        <input type="submit" class="submit" value="{{ 'General_ContinueToPiwik'|translate }}"/>
                    {% else %}
                        <input type="submit" class="submit" value="{{ 'CoreUpdater_UpgradePiwik'|translate }}"/>
                    {% endif %}
                </form>
            {% else %}
                {% if warningMessages|length >= 0 %}
                    <div class="alert alert-success">
                        {{ 'CoreUpdater_PiwikHasBeenSuccessfullyUpgraded'|translate }}
                    </div>
                {% endif %}
                <form action="index.php" class="clearfix">
                    <input type="submit" class="submit" value="{{ 'General_ContinueToPiwik'|translate }}"/>
                </form>
            {% endif %}
        {% endif %}

        {% include "@Installation/_integrityDetails.twig" %}

    </div>

{% endblock %}

and here's the list of plugins:

[Plugins]
Plugins[] = "CorePluginsAdmin"
Plugins[] = "CoreAdminHome"
Plugins[] = "CoreHome"
Plugins[] = "Diagnostics"
Plugins[] = "CoreVisualizations"
Plugins[] = "Proxy"
Plugins[] = "API"
Plugins[] = "ExamplePlugin"
Plugins[] = "Widgetize"
Plugins[] = "Transitions"
Plugins[] = "LanguagesManager"
Plugins[] = "Actions"
Plugins[] = "Dashboard"
Plugins[] = "MultiSites"
Plugins[] = "Referrers"
Plugins[] = "UserSettings"
Plugins[] = "UserLanguage"
Plugins[] = "DevicesDetection"
Plugins[] = "Goals"
Plugins[] = "Ecommerce"
Plugins[] = "SEO"
Plugins[] = "Events"
Plugins[] = "UserCountry"
Plugins[] = "VisitsSummary"
Plugins[] = "VisitFrequency"
Plugins[] = "VisitTime"
Plugins[] = "VisitorInterest"
Plugins[] = "ExampleAPI"
Plugins[] = "ExampleRssWidget"
Plugins[] = "Provider"
Plugins[] = "Feedback"
Plugins[] = "Monolog"
Plugins[] = "Login"
Plugins[] = "UsersManager"
Plugins[] = "SitesManager"
Plugins[] = "Installation"
Plugins[] = "CoreUpdater"
Plugins[] = "CoreConsole"
Plugins[] = "ScheduledReports"
Plugins[] = "UserCountryMap"
Plugins[] = "Live"
Plugins[] = "CustomVariables"
Plugins[] = "PrivacyManager"
Plugins[] = "ImageGraph"
Plugins[] = "Annotations"
Plugins[] = "MobileMessaging"
Plugins[] = "Overlay"
Plugins[] = "SegmentEditor"
Plugins[] = "Insights"
Plugins[] = "ZenMode"
Plugins[] = "LeftMenu"
Plugins[] = "Morpheus"
Plugins[] = "Contents"
Plugins[] = "BulkTracking"
Plugins[] = "Resolution"
Plugins[] = "DevicePlugins"
Plugins[] = "Ie-theme-piwik"

the last plugin is my theme file that just contains a css file.

@propertunist
Copy link
Author

i just over-wrote piwik with the previous version that i downloaded from the builds page (2.13.1) and now i see this when i navigate to the login page:

Plugin Proxy has defined the method getInformation() and as well as having a plugin.json file. Please delete the getInformation() method from the plugin class. Alternatively, you may delete the plugin directory from plugins/Proxy

@mattab
Copy link
Member

mattab commented Jul 10, 2015

@propertunist A truther, welcome :)
To remove this error you can delete the plugins/Proxy/plugin.json file

@propertunist
Copy link
Author

aloha! i prefer the term 'balancer' - but truth is great too! ;)

i just deleted that file and now i see this message when i view a piwik page:

Plugin MultiSites has defined the method getInformation() and as well as having a plugin.json file. Please delete the getInformation() method from the plugin class. Alternatively, you may delete the plugin directory from plugins/MultiSites

i'm not sure exactly what this message is suggesting, since there is no 'plugin directory' within the multisites plugin and when i removed the entire multisites plugin from the piwik file structure, the error message stayed the same.

@mattab
Copy link
Member

mattab commented Jul 10, 2015

Similarly try delete plugins/MultiSites/plugin.json

Alternatively, delete all files (after backing up your config/config.ini.php) and re-upload a fresh Piwik 2.14.0 and put back your config.ini.php ?

@mattab
Copy link
Member

mattab commented Jul 10, 2015

Balancer is a new term, and I like it :)

@propertunist
Copy link
Author

;)

i just completely removed the install folder and replaced it with the downloaded version from piwik.org (and kept the original config file as advised)..
the outcome is that the exact same situation continues here. i saw the same error message as before and the same one about Multisites after i again deleted the json file from the proxy plugin.

@mattab
Copy link
Member

mattab commented Jul 10, 2015

Could you try replace the line {{ postEvent('Template.topBar')|raw }} with <!-- {{ postEvent('Template.topBar')|raw }} --> and try again?

@propertunist
Copy link
Author

ok, which file is that in?

@propertunist
Copy link
Author

oh, so i just accessed piwik from a different browser and this time a different page was rendered which allowed me to trigger the database upgrade. it looks like the database upgrade worked ok and piwik is now running. :)
the only issue appears to be that my theme is not compatible with this version of piwik for some unspecified reason.

@mattab mattab added the worksforme The issue cannot be reproduced and things work as intended. label Jul 12, 2015
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
worksforme The issue cannot be reproduced and things work as intended.
Projects
None yet
Development

No branches or pull requests

2 participants