XF 2.0 Still can't upgrade - this time it's a non existent addon

Mr Lucky

Well-known member
When I try to upgrade to beta version 2 I get this:

Code:
Conflicts with the following third-party add-ons have been detected:
Conversation Improvements by Xon
Upgrading XenForo is not possible until these conflicts have been resolved. Resolving these errors will generally require you to restore the XenForo files from your previous version and uninstall the conflicting add-on or upgrade it to a non-conflicting version. The add-on author may have more specific advice as to the steps you can take.

However I had already uninstalled that addon (and its files)

So what do I do now?
 
You would need to contact the developer in the first instance (as suggested in the error message).

It would seem that, despite uninstalling, the like_users field remains on the xf_conversation_message users table. It may have been fixed or the field name have changed in a more recent version so sometimes you might need to upgrade to the latest version before uninstalling or before upgrading to 2.0.
 
same problem here:
Code:
Conflicts with the following third-party add-ons have been detected:
[TH] Custom Fields
[bd] Widget Framework
Conversation Improvements by Xon
Upgrading XenForo is not possible until these conflicts have been resolved. Resolving these errors will generally require you to restore the XenForo files from your previous version and uninstall the conflicting add-on or upgrade it to a non-conflicting version. The add-on author may have more specific advice as to the steps you can take.

I uninstalled the latest version of the widget framework. And I don't even remember that I have installed [TH] Custom Fields and Conversation Improvements by Xon. I probably have uninstalled those a long time ago :D
 
Did you guys attempt an upgrade before? You would need to revert to a 1.x backup before trying again.
I did for Beta 1 but it failed and I then reverted to a 1.5.14 Backup for my Beta 2 attempt. And before I run the upgrade, I uninstalled all of the addons.
 
Did you guys attempt an upgrade before? You would need to revert to a 1.x backup before trying again.

Yes, I did attempt a previous upgrade.

However this time I have reverted to 1.5.14 to try again, uninstalled addons and attempted to upgrade.


You would need to contact the developer in the first instance (as suggested in the error message).

It would seem that, despite uninstalling, the like_users field remains on the xf_conversation_message users table. It may have been fixed or the field name have changed in a more recent version so sometimes you might need to upgrade to the latest version before uninstalling or before upgrading to 2.0.

Yes I have left a post in the addon discussion. It is the latest version
 
Conversation Improvements by Xon version 1.3.7 at least does remove the column we check for, so if it is no longer installed then the strategy is to reinstall it, and then uninstall it, or manually remove the column:
Code:
ALTER TABLE xf_conversation_message
DROP like_users

Widget Framework 2.5.9 does remove the xf_widget table, so if it's no longer installed and that table still exists then the strategy is to reinstall it, and then uninstall it, or manually remove the table:
Code:
DROP TABLE xf_widget

[TH] Custom Fields is more problematic because it's likely several tables and several fields in several tables that clash and there's no current version which seems to rectify that bug.
 
Conversation Improvements by Xon version 1.3.7 at least does remove the column we check for, so if it is no longer installed then the strategy is to reinstall it, and then uninstall it

It's Conversation Essentials, not Conversation Improvements. And I have reinstalled and uninstalled.
 
It's Conversation Essentials, not Conversation Improvements. And I have reinstalled and uninstalled.
Are you using the latest version? If so, then @Xon might need to look at that (and we'll adjust our error message accordingly).

In the meantime you'll want to run this query:
SQL:
ALTER TABLE xf_conversation_message
DROP like_users
Thanks @Chris D dropping xf_widget helped for widget framework. But I can't find a table called like_users.
It's a column in the xf_conversation_message table, not a table itself.

same problem here:
Code:
Conflicts with the following third-party add-ons have been detected:
[TH] Custom Fields
[bd] Widget Framework
Conversation Improvements by Xon
Upgrading XenForo is not possible until these conflicts have been resolved. Resolving these errors will generally require you to restore the XenForo files from your previous version and uninstall the conflicting add-on or upgrade it to a non-conflicting version. The add-on author may have more specific advice as to the steps you can take.

I uninstalled the latest version of the widget framework. And I don't even remember that I have installed [TH] Custom Fields and Conversation Improvements by Xon. I probably have uninstalled those a long time ago :D
For [TH] Custom Fields you need to run all of these:
SQL:
DROP TABLE xf_thread_field
SQL:
DROP TABLE xf_thread_field_value
SQL:
DROP TABLE xf_forum_field
SQL:
ALTER TABLE xf_forum DROP field_cache
SQL:
ALTER TABLE xf_thread DROP custom_fields

Just in case it wasn't clear - there will be data loss as a result of all of these queries.
 
It's Conversation Essentials, not Conversation Improvements. And I have reinstalled and uninstalled.
I don't have access to that code to confirm, but there aren't any references in that description to conversation likes which is what we're checking for. Conversation improvements does specifically mention this and we can see the code (and that a currently unreleased version has changes for XF2 upgrade compatibility).

If you don't have that installed any more, then you may need to reinstall and then uninstall the latest version. That said, Chris's query would work as well.
 
That said, Chris's query would work as well.

I tried that now I just get this again:

Code:
LogicException: xf_css_cache already exists, but the structure does not match. in src/XF/Db/Schema/Create.php at line 51
XF\Db\Schema\Create->getQuery() in src/XF/Db/Schema/AbstractDdl.php at line 131
XF\Db\Schema\AbstractDdl->apply() in src/XF/Db/SchemaManager.php at line 192
XF\Db\SchemaManager->createTable() in src/XF/Install/Upgrade/2000010-200a.php at line 121
XF\Install\Upgrade\Version2000010->step2() in src/XF/Install/Controller/Upgrade.php at line 155
XF\Install\Controller\Upgrade->actionRun() in src/XF/Mvc/Dispatcher.php at line 232
XF\Mvc\Dispatcher->dispatchClass() in src/XF/Mvc/Dispatcher.php at line 85
XF\Mvc\Dispatcher->dispatchLoop() in src/XF/Mvc/Dispatcher.php at line 41
XF\Mvc\Dispatcher->run() in src/XF/App.php at line 1777
XF\App->run() in src/XF.php at line 320
XF::runApp() in install/index.php at line 14

As here:

https://xenforo.com/community/threads/logicexception-xf_css_cache-already-exists.133635/
 
Are you using the latest version? If so, then @Xon might need to look at that (and we'll adjust our error message accordingly).
An old Conversation Essentials upgrade converted stuff over to the Conversation Improvements format. I've released updates for both add-ons, with a note in the Conversation Essentials update you need to install/update Conversation Improvements to actually unblock the XF2 upgrade path from those add-ons
 
Instead of just detecting conflicts, it might be better if the upgrader would just resolve them (eg. by renaming conflicting fields/tables).

This way the upgrade could proceeed without the user having to start over (which might not be easy in case the user has deleted the 1.5 files without having a backup ... which nobody would ever do of course ;))
Add-On authors could then just handle this case on upgrades..
 
Why would the data be gone just because a field or table got renamed?

All the Add-on has to do upon upgrade is to rename xf_<coretable>.<corefield>__conflict and xf_<coretable>__conflict to smth. meaningful.

(Wich are the names Beta 3 does use to resolve conflicts as suggested)
 
If the conflicting tables have been re-named or removed, how can the add-on upgrade fix it? The data is gone ;)

Liam
It is actually how we've handled it, as of Beta 3, though we still block the upgrade. We will activate it fully in Beta 4 and no longer block the upgrade and let the new conflict resolution code handle it:
The schema manager change system will now identify conflicting tables or columns and rename them instead of stopping with an error. If this happens, an entry will be added to the server error log.
Conflicted tables and columns are renamed so they are suffixed with __conflict so it is at least recoverable.
 
Top Bottom