+1 to disable this mode until we have a proper UI for it that takes into account the configured subwiki defaut UI
On Thu, Sep 19, 2013 at 3:25 PM, Guillaume "Louis-Marie" Delhumeau <[email protected]> wrote: > It seems we can't fix it for 5.2 because of the time window. Can't we > remove the "upgrade all wikis" option, for this release? > > > 2013/9/19 Thomas Mortagne <[email protected]> > >> On Thu, Sep 19, 2013 at 9:56 AM, Marius Dumitru Florea >> <[email protected]> wrote: >> > On Thu, Sep 19, 2013 at 10:34 AM, Thomas Mortagne >> > <[email protected]> wrote: >> >> On Thu, Sep 19, 2013 at 9:31 AM, Thomas Mortagne >> >> <[email protected]> wrote: >> >>> On Thu, Sep 19, 2013 at 9:10 AM, Marius Dumitru Florea >> >>> <[email protected]> wrote: >> >>>> On Wed, Sep 18, 2013 at 4:13 PM, Thomas Mortagne >> >>>> <[email protected]> wrote: >> >>>>> On Wed, Sep 18, 2013 at 3:08 PM, Marius Dumitru Florea >> >>>>> <[email protected]> wrote: >> >>>>>> On Wed, Sep 18, 2013 at 12:26 PM, Thomas Mortagne >> >>>>>> <[email protected]> wrote: >> >>>>>>> On Wed, Sep 18, 2013 at 11:09 AM, Guillaume "Louis-Marie" Delhumeau >> >>>>>>> <[email protected]> wrote: >> >>>>>>>> Hi devs. >> >>>>>>>> I am testing the migration from XEM 4.5.4 to XE 5.2 (local >> build). Sorin >> >>>>>>>> has already reported some problems in JIRA. >> >>>>>>>> For me, the problem occurs when I use the "upgrade all wikis" >> option. >> >>>>>>>> >> >>>>>>>> Let me explain it: >> >>>>>>>> >> >>>>>>>> = Prerequisites = >> >>>>>>>> >> >>>>>>>> 1. Install a new XEM 4.5.4. >> >>>>>>>> 2. Create a workspace with WorkspaceManager (called 'workspace1') >> >>>>>>>> 3. Create a new subwiki with WikiManager (called 'subwiki1') - I >> create it >> >>>>>>>> from a XAR template which is xwiki-enterprise-ui-all. >> >>>>>>>> >> >>>>>>>> = Upgrade, part 1 = >> >>>>>>>> >> >>>>>>>> 1. Replace the webapp with a 5.2. >> >>>>>>>> 2. Put your own maven directory as the extension repository. (in >> >>>>>>>> xwiki.properties: >> >>>>>>>> >> extension.repositories=local:maven:file://${sys:user.home}/.m2/repository) >> >>>>>>>> 3. Upgrade the main wiki >> >>>>>>>> >> >>>>>>>> It works: >> >>>>>>>> - For example Main.SpaceIndex is in version 2.1. >> >>>>>>>> - In the "installed extensions" menu, I can see all extensions >> correctly >> >>>>>>>> upgraded. >> >>>>>>>> >> >>>>>>>> = Upgrade, part 2 = >> >>>>>>>> >> >>>>>>>> == Scenario 1 == >> >>>>>>>> 1. In the DW, choose "Upgrade all wikis. Choose this option if >> all wikis >> >>>>>>>> are administrated by the same entity.". >> >>>>>>>> It displays "All extensions are up to date. " >> >>>>>>>> >> >>>>>>>> But: >> >>>>>>>> 'workspace1' is not upgraded: >> >>>>>>>> - for example Panels.WorkspaceInformationPanel is still in >> version 1.1 >> >>>>>>>> - In the "installed extensions" menu, I see 'XWiki Enterprise - >> UI All'. It >> >>>>>>>> has not been upgraded because there is no new version for it. It >> has been >> >>>>>>>> replaced by xwiki-enterprise-ui-wiki-all. >> >>>>>>>> >> >>>>>>>> 'subwiki1' is not upgraded: >> >>>>>>>> - for example Main.SpaceIndex is still in version 1.1 >> >>>>>>>> - In the "installed extensions" menu, I see 'XWiki Enterprise - >> UI All ' >> >>>>>>>> with the message 'Installed but not valid'. It has not been >> upgraded >> >>>>>>>> because there is no new version for it. It has been replaced by >> >>>>>>>> xwiki-enterprise-ui-common. >> >>>>>>>> >> >>>>>>>> == Scenario 2 == >> >>>>>>>> 1. In the DW, choose "Upgrade only the current wiki. Choose this >> option if >> >>>>>>>> each wiki is administrated by a separate entity. In this case >> it's best if >> >>>>>>>> each wiki is upgraded by its owner. ". >> >>>>>>>> 2. Go to every subwiki, logged as Admin. You will see the DW. >> >>>>>>> >> >>>>>>>> 3. Select "Yes, this is an upgrade". >> >>>>>>> >> >>>>>>> I don't understand this part, it's not supposed to ask you if it's >> an >> >>>>>>> upgrade. You are supposed to get this question only for old >> previous >> >>>>>>> wikis where there was no extensions registered corresponding to the >> >>>>>>> installed pages. >> >>>>>>> >> >>>>>> >> >>>>>>> Marius ? >> >>>>>> >> >>>>>> I have this code: >> >>>>>> >> >>>>>> #macro (displayDefaultUIExtension $distributionUIId) >> >>>>>> #set ($installedVersion = >> >>>>>> $services.extension.getInstalledExtension($distributionUIId.id, >> >>>>>> $extensionNamespace)) >> >>>>>> ... >> >>>>>> #set ($discard = "#getExtensionJobStatus($distributionUIId.id >> >>>>>> $distributionUIId.version.value $distributionUIJobStatus)") >> >>>>>> #if (!$installedVersion && (!$distributionUIJobStatus || >> >>>>>> $distributionUIJobStatus.state == 'FINISHED')) >> >>>>>> ## There is no previous version of the default UI installed on >> the >> >>>>>> current wiki and there is no job running for >> >>>>>> ## the default UI either. >> >>>>>> #set ($documentCount = $xwiki.countDocuments('')) >> >>>>>> #if ($distributionState == 'NEW' && $documentCount > 30) >> >>>>>> ## There are documents in the database but there is no info >> >>>>>> about the default UI that was previously installed. >> >>>>>> #repairPreviousUI() >> >>>>>> #elseif ($distributionState == 'DIFFERENT') >> >>>>>> ## TODO: Display the previous distribution UI extension to let >> >>>>>> the user uninstall it. >> >>>>>> #end >> >>>>>> #end >> >>>>>> ... >> >>>>>> #end >> >>>>>> >> >>>>>> So $distributionUIId is probably >> >>>>>> 'org.xwiki.enterprise:xwiki-enterprise-ui-wiki' and >> $installedVersion >> >>>>>> is null because EM doesn't think it's installed. The installed >> version >> >>>>>> is probably xwiki-enterprise-ui. The the upgrade question is >> displayed >> >>>>>> because the id of the default UI has changed. Is there are way to >> >>>>>> improve the condition on my side or should EM detect that >> >>>>>> 'xwiki-enterprise-ui' is a previous version of >> >>>>>> 'xwiki-enterprise-ui-wiki'? >> >>>>> >> >>>> >> >>>>> We talked about it already and the issue is that you are searching >> for >> >>>>> xwiki-enterprise-ui-wiki id that you will obviously don't find, you >> >>>>> need to test all features of xwiki-enterprise-ui-wiki. A some point >> >>>>> you worked around it by putting an hardcoded list somewhere of all >> the >> >>>>> previous ids of XE AFAIK so you could probably just update it but the >> >>>>> best really would be to to it properly by looking at features. >> >>>> >> >>>> The hard-coded list of XE/XEM XAR ids is still used but only when >> >>>> repairing the installed UI (when DW doesn't know which version is >> >>>> currently installed). >> >>>> >> >>>> I'll update the code to take into account all the features >> (recursively?). >> >>> >> >>> The last version is supposed to contains all previous names so no need >> >>> to do it recursively. >> >> >> > >> >> Hmm actually the best is maybe to simply don't ask anything if there >> >> is any XAR extension installed. If there is something whatever it is, >> >> it's an upgrade, done. >> > >> > You mean iterating over getInstalledExtensions and checking if there >> > is one with type XAR? >> >> Yep. >> >> > >> >> >> >>> >> >>>> >> >>>> Thanks, >> >>>> Marius >> >>>> >> >>>>> >> >>>>>> >> >>>>>> Thanks, >> >>>>>> Marius >> >>>>>> >> >>>>>>> >> >>>>>>>> Note: if you upgrade a subwiki, the proposed UI will be XWiki >> Enterprise - >> >>>>>>>> UI - Common meanwhile if you upgrade a workspace, it will be XWiki >> >>>>>>>> Enterprise - UI - Wiki. It is normal. >> >>>>>>>> 4. You will see "Administration Application - 5.2-SNAPSHOT - >> Installed >> >>>>>>>> version 4.5.4 is not valid", and the same for several extensions. >> >>>>>>>> 5. Click on "continue", anyway. >> >>>>>>>> >> >>>>>>>> All is OK. In the "installed extensions" menu, I can see all >> extensions >> >>>>>>>> correctly upgraded. >> >>>>>>>> >> >>>>>>>> = Conclusion = >> >>>>>>>> >> >>>>>>>> - The scenario 1 don't work at all. >> >>>>>>>> - In the scenario 2, it displays "Installed version 4.5.4 is not >> valid" >> >>>>>>>> which is disturbing, because everything go right in the end. >> >>>>>>>> >> >>>>>>>> As Marius and Thomas explained me: >> >>>>>>>> >> >>>>>>>>> When you have an extension installed with version X, and then a >> new >> >>>>>>>>> version Y is released but with the id changed, extension manager >> is not >> >>>>>>>>> able to detect it. Ideally the EM should detect this and propose >> the user >> >>>>>>>>> to upgrade from version X to Y even if the extension id has >> changed between >> >>>>>>>>> version X and Y. >> >>>>>>>>> >> >>>>>>>> >> >>>>>>>> How can we solve these issues? >> >>>>>>>> >> >>>>>>>> Thanks, >> >>>>>>>> Guillaume Louis-Marie Delhumeau >> >>>>>>>> _______________________________________________ >> >>>>>>>> devs mailing list >> >>>>>>>> [email protected] >> >>>>>>>> http://lists.xwiki.org/mailman/listinfo/devs >> >>>>>>> >> >>>>>>> >> >>>>>>> >> >>>>>>> -- >> >>>>>>> Thomas Mortagne >> >>>>>>> _______________________________________________ >> >>>>>>> devs mailing list >> >>>>>>> [email protected] >> >>>>>>> http://lists.xwiki.org/mailman/listinfo/devs >> >>>>>> _______________________________________________ >> >>>>>> devs mailing list >> >>>>>> [email protected] >> >>>>>> http://lists.xwiki.org/mailman/listinfo/devs >> >>>>> >> >>>>> >> >>>>> >> >>>>> -- >> >>>>> Thomas Mortagne >> >>>>> _______________________________________________ >> >>>>> devs mailing list >> >>>>> [email protected] >> >>>>> http://lists.xwiki.org/mailman/listinfo/devs >> >>>> _______________________________________________ >> >>>> devs mailing list >> >>>> [email protected] >> >>>> http://lists.xwiki.org/mailman/listinfo/devs >> >>> >> >>> >> >>> >> >>> -- >> >>> Thomas Mortagne >> >> >> >> >> >> >> >> -- >> >> Thomas Mortagne >> >> _______________________________________________ >> >> devs mailing list >> >> [email protected] >> >> http://lists.xwiki.org/mailman/listinfo/devs >> > _______________________________________________ >> > devs mailing list >> > [email protected] >> > http://lists.xwiki.org/mailman/listinfo/devs >> >> >> >> -- >> Thomas Mortagne >> _______________________________________________ >> devs mailing list >> [email protected] >> http://lists.xwiki.org/mailman/listinfo/devs >> > _______________________________________________ > devs mailing list > [email protected] > http://lists.xwiki.org/mailman/listinfo/devs -- Thomas Mortagne _______________________________________________ devs mailing list [email protected] http://lists.xwiki.org/mailman/listinfo/devs

