Forums | Mahara Community

Support /
Mahara upgrade from 1.10.3 to 15.04 - Cloud plugin causing some problems

Remy Olasoji's profile picture
Posts: 37

07 May 2015, 1:23


I'm trying to upgrade our Mahara site from 1.9 to 15.04.  Direct upgrade failed so I'm trying step upgrade i.e. 1.9 > 1.10.3 > 15.04.

I've been able to successfully upgrade the site to 1.10.3 but when I try upgrading that to 15.04 I got the following error:

File /var/www/mahara1504/artefact/cloud/blocktype/arnes/lib.php did not exist

Call stack (most recent first):
  • safe_require("blocktype", "cloud/arnes") at /var/www/mahara1504/lib/upgrade.php:1128
  • install_blocktype_categories_for_plugin("cloud/arnes") at /var/www/mahara1504/lib/db/upgrade.php:3974
  • xmldb_core_upgrade("2014092316") at /var/www/mahara1504/lib/upgrade.php:359
  • upgrade_core(object(stdClass)) at /var/www/mahara1504/admin/upgrade.json.php:86

Hope someone can help.  I've tried removing the cloud plugin folder but that didn't work.  When the folder is left in to upgrade with the site, the page goes completely blank and error.log had the following entry:

[Wed May 06 13:57:54.628146 2015] [:error] [pid 13339] [client] [WAR] 24 (lib/errors.php:747) Failed to get a recordset: mysqli error: [1062: Duplicate entry 'shortcut' for key 'PRIMARY'] in adodb_throw(INSERT INTO "blocktype_category" ("name", "sort") VALUES ('shortcut', '0'), ), referer: [Wed May 06 13:57:54.628188 2015] [:error] [pid 13339] [client] [WAR] 24 (lib/errors.php:747) Command was: INSERT INTO "blocktype_category" ("name", "sort") VALUES (?, ?) and values was (shortcut,0), referer: [Wed May 06 13:57:54.628198 2015] [:error] [pid 13339] [client] Call stack (most recent first):, referer: [Wed May 06 13:57:54.628203 2015] [:error] [pid 13339] [client] * log_message("Failed to get a recordset: mysqli error: [1062: Du...", 8, true, true) at /var/www/mahara1504/lib/errors.php:97, referer: [Wed May 06 13:57:54.628220 2015] [:error] [pid 13339] [client] * log_warn("Failed to get a recordset: mysqli error: [1062: Du...") at /var/www/mahara1504/lib/errors.php:747, referer: [Wed May 06 13:57:54.628224 2015] [:error] [pid 13339] [client] * SQLException->__construct("Failed to get a recordset: mysqli error: [1062: Du...") at /var/www/mahara1504/lib/dml.php:1054, referer: [Wed May 06 13:57:54.628228 2015] [:error] [pid 13339] [client] * insert_record("blocktype_category", object(stdClass)) at /var/www/mahara1504/lib/db/upgrade.php:3856, referer: [Wed May 06 13:57:54.628232 2015] [:error] [pid 13339] [client] * xmldb_core_upgrade("2014092316") at /var/www/mahara1504/lib/upgrade.php:359, referer: [Wed May 06 13:57:54.628236 2015] [:error] [pid 13339] [client] * upgrade_core(object(stdClass)) at /var/www/mahara1504/admin/upgrade.json.php:86, referer: [Wed May 06 13:57:54.628240 2015] [:error] [pid 13339] [client] , referer: [Wed May 06 14:25:47.629145 2015] [:error] [pid 13327] [client] PHP Fatal error: Class PluginArtefactCloud contains 1 abstract method and must therefore be declared abstract or implement the remaining methods (IPlugin::get_plugintype_name) in /var/www/mahara1504/artefact/cloud/lib.php on line 0




Gregor Anželj's profile picture
Posts: 349

07 May 2015, 5:38

That is because Cloud plugin isn't upgraded to 15.04 version yet. And there seems to be some changes (added method) between latest versions of Mahara.

Can you disable Cloud plugin before upgrading from 1.10.3 to 15.04.0 and try upgrading then?
Remy Olasoji's profile picture
Posts: 37

07 May 2015, 8:35

Hi Gregor,

Thanks for your quick response.

I should have mentioned the plugin was actually disabled (hidden) before the upgrade because we had some problems getting it to work on our system.  That's why I was baffled by the error, especially when removing the folder didn't to work either.  (I'd assumed removing the folder meant every reference to the plugin will be uninstalled from the system.)

Is there any way 'walk' me through removing every database reference to the plugin in the working 1.10.3 install before I try upgrading again?  My next plan is to attempt a clean up (uninstall the plugin manually) by searching through the database for references to the plugin ... but I'll be 'flying' completely blind without knowing which tables may be affected.  So if you could give me a list of possible tables to start with, that'll be a big help.

Thanks and best regards,
Remy Olasoji's profile picture
Posts: 37

08 May 2015, 1:38

In case this saves some time for anyone with similar upgrade issues, I've been able to resolve the problem by doing the following:

  1. Performed manual search through database dump file for cpds / cloud artefact entriesand DELETED related items (artefact:cloud, artefact:cpds) – ONLY IN TABLES / INSERT STATEMENTS i.e. ["('cloud',2013010701,'1.1.0',0)," and "('cpds',2013122400,'0.0.7',0)," from `artefact_installed` // "('cloud','cloud')," and "('activity','cpds'),('cpd','cpds')," from `artefact_installed_type`].  Be sure to remove an extra commas left after deletion.  Modified tables: `artefact_installed`, `artefact_installed_type`
  2. Performed manual search through database dump file for cpds / cloud blocktype entries – ONLY IN TABLES / INSERT STATEMENTS – and DELETED related items (blocktype:cloud/arnes, blocktype:cloud/bitbucket, blocktype:cloud/box, blocktype:cloud/dropbox, blocktype:cloud/github, blocktype:cloud/googledrive, blocktype:cloud/skydrive, blocktype:cloud/soundcloud, blocktype:cloud/sugarsync, blocktype:cloud/zotero, blocktype:cpds/cpds).  Modified tables: `blocktype_installed`, `blocktype_installed_category`, `blocktype_installed_viewtype`

Note that there may be references to the blocktype items in `block_instance` table if artefacts have been created using the plugins.  These were left in and seemed to have no noticeable impact on the upgrade process.  Yet to find out if there will be usage issues.

Finally, while making changes to database dump file, if the URL of the new site is different from the original site, it may be useful to change that in `config` table before the upgrade.


4 results