Extension Update on Master works, Error on Slave 8 Years, 10 Months ago
|
Karma: 0
|
Good day Edwin,
I am having a couple problems with Extensions working on my Slave Sites. Since upgrading to the latest version of RSForm by RSJoomla, I am getting a 1054 Error when trying to access the form. I am also getting an Error when working with NoNumbers' Adv Module Manager:
In both cases I am seeing references to columns. If an extension's upgrade consists of changes to the database structure, does the Master update the DB structure for the Slave sites? If not, can/do we need to run the upgrade from each individual Slave site?
Thanks!
Jim
RSForm
Master:
master.communities.oaug.org/contact-us
Slaves:
discretesig.communities.oaug.org/contact-us
hyperion.communities.oaug.org/contact-us
1054
Unknown column 'LoadFormLayoutFramework' in 'field list' SQL=SELECT `FormId`,`FormLayoutName`,`FormLayout`,`LoadFormLayoutFramework`,`KeepIP`,`Keepdata`,`ConfirmSubmission`,`ScriptProcess`,`ScriptProcess2`,`UserEmailScript`,`AdminEmailScript`,`ReturnUrl`,`ShowThankyou`,`Thankyou`,`ShowContinue`,`Published`,`FormTitle
`,`MetaTitle`,`MetaDesc`,`MetaKeywords`,`Access`,`ScriptDisplay`,`ErrorMessage`,`FormTitle`,`CSS`,`JS`,`CSSClass`,`CSSId`,`CSSName`,`CSSAction`,`CSSAdditionalAttributes`,`AjaxValidation`,`ThemeParams` FROM `discretesig_rsform_forms` WHERE `FormId`='1'
It appears the page you were looking for doesn't exist. Sorry about that.
Admin of RSForm:
Unknown column 'fields' in 'field list' SQL=UPDATE `discretesig_rsform_posts` SET `enabled`='0',`method`='1',`fields`='[]',`silent`='1',`url`='' WHERE `form_id`='1'
NoNumbers' Adv Module Manager:
Public Page When Displaying a Module:
Error loading module Unknown column 'am.mirror_id' in 'field list' SQL=SELECT m.id, m.title, m.module, m.position, m.content, m.showtitle, m.params,am.mirror_id, am.params as advancedparams, 0 as menuid, m.publish_up, m.publish_down FROM HyperionSIG_modules AS m LEFT JOIN HyperionSIG_extensions AS e ON e.element = m.module AND e.client_id = m.client_id LEFT JOIN HyperionSIG_advancedmodules as am ON am.moduleid = m.id WHERE m.published = 1 AND e.enabled = 1 AND m.access IN (1,1,2,3,6,7,8,9,10,11,12) AND m.client_id = 0 ORDER BY m.position, m.ordering
Admin:
Error
Unknown column 'aa.mirror_id' in 'field list' SQL=SELECT a.id,l.title AS language_title,uc.name AS editor,ag.title AS access_level,MIN(mm.menuid) AS pages,e.name AS name,a.id, a.title, a.note, a.position, a.module, a.language,a.checked_out, a.checked_out_time, a.published+2*(e.enabled-1) as published, a.access, a.ordering, a.publish_up, a.publish_down,aa.params AS advancedparams,aa.mirror_id AS mirror_id FROM HyperionSIG_modules AS a LEFT JOIN HyperionSIG_languages AS l ON l.lang_code = a.language LEFT JOIN HyperionSIG_users AS uc ON uc.id=a.checked_out LEFT JOIN HyperionSIG_viewlevels AS ag ON ag.id = a.access LEFT JOIN HyperionSIG_modules_menu AS mm ON mm.moduleid = a.id LEFT JOIN HyperionSIG_extensions AS e ON e.element = a.module LEFT JOIN HyperionSIG_advancedmodules AS aa ON aa.moduleid = a.id WHERE a.id IN (1,87,88,89,90,91,92,93,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109) GROUP BY a.id, a.title, a.note, a.position, a.module, a.language, a.checked_out,a.checked_out_time, a.published, a.access, a.ordering, l.title, uc.name, ag.title, e.name,l.lang_code, uc.id, ag.id, mm.moduleid, e.element, a.publish_up, a.publish_down, e.enabled Unknown column 'aa.mirror_id' in 'field list' SQL=SELECT a.id,l.title AS language_title,uc.name AS editor,ag.title AS access_level,MIN(mm.menuid) AS pages,e.name AS name,a.id, a.title, a.note, a.position, a.module, a.language,a.checked_out, a.checked_out_time, a.published+2*(e.enabled-1) as published, a.access, a.ordering, a.publish_up, a.publish_down,aa.params AS advancedparams,aa.mirror_id AS mirror_id FROM HyperionSIG_modules AS a LEFT JOIN HyperionSIG_languages AS l ON l.lang_code = a.language LEFT JOIN HyperionSIG_users AS uc ON uc.id=a.checked_out LEFT JOIN HyperionSIG_viewlevels AS ag ON ag.id = a.access LEFT JOIN HyperionSIG_modules_menu AS mm ON mm.moduleid = a.id LEFT JOIN HyperionSIG_extensions AS e ON e.element = a.module LEFT JOIN HyperionSIG_advancedmodules AS aa ON aa.moduleid = a.id WHERE a.id IN (1,87,88,89,90,91,92,93,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109) GROUP BY a.id, a.title, a.note, a.position, a.module, a.language, a.checked_out,a.checked_out_time, a.published, a.access, a.ordering, l.title, uc.name, ag.title, e.name,l.lang_code, uc.id, ag.id, mm.moduleid, e.element, a.publish_up, a.publish_down, e.enabled ORDER BY `a`.`title` ASC LIMIT 0, 20 Unknown column 'aa.mirror_id' in 'field list' SQL=SELECT a.id,l.title AS language_title,uc.name AS editor,ag.title AS access_level,MIN(mm.menuid) AS pages,e.name AS name,a.id, a.title, a.note, a.position, a.module, a.language,a.checked_out, a.checked_out_time, a.published+2*(e.enabled-1) as published, a.access, a.ordering, a.publish_up, a.publish_down,aa.params AS advancedparams,aa.mirror_id AS mirror_id FROM HyperionSIG_modules AS a LEFT JOIN HyperionSIG_languages AS l ON l.lang_code = a.language LEFT JOIN HyperionSIG_users AS uc ON uc.id=a.checked_out LEFT JOIN HyperionSIG_viewlevels AS ag ON ag.id = a.access LEFT JOIN HyperionSIG_modules_menu AS mm ON mm.moduleid = a.id LEFT JOIN HyperionSIG_extensions AS e ON e.element = a.module LEFT JOIN HyperionSIG_advancedmodules AS aa ON aa.moduleid = a.id WHERE a.id IN (1,87,88,89,90,91,92,93,94,96,97,98,99,100,101,102,103,104,105,106,107,108,109) GROUP BY a.id, a.title, a.note, a.position, a.module, a.language, a.checked_out,a.checked_out_time, a.published, a.access, a.ordering, l.title, uc.name, ag.title, e.name,l.lang_code, uc.id, ag.id, mm.moduleid, e.element, a.publish_up, a.publish_down, e.enabled ORDER BY `a`.`title` ASC
|
|
|
Last Edit: 2016/01/31 16:02 By jimgrove.
|
|
Re: Extension Update on Master works, Error on Slave 8 Years, 9 Months ago
|
Karma: 54
|
Jim, as you noticed, when you install an update of an extension, it is applied on the master only.
As explained in the user manual, you have to distinguish:
- The update that correspond to a bug fix
- The upGrade that means that the DB structure is modified and PHP code but is compatible with the previous version
- The migration that means that both DB and PHP code are modified but incompatible with the previous version. In this case, it is generally required to do an export/import.
In this particular case, you report an upGrade of RSForm and effectivelly, you have to re-apply the DB structure modification into the slave site.
There are different method to apply the DB structure modification into a slave.
- Re-install the extension in the slave site because in general, this is PHP code in the extension installer that detect and perform this upGrade of the DB structure.
- Use the JMS Maintenance menu to detect the DB structure modification. To summarize, this menu help you comparing the DB structure with either the MySQL installation file or compare with the master DB structure. The default is generally to compare with the MySQL installation file. Like with the extension manager / database => fix button, the JMS maintenance allows you to fix such DB structure modification.
Personnally the procedure that I use with the JMS Maintenance is to:
- Perform a check on all the slave site.
- Select in the bottom right to display all the sites
- Click on the icon (middle one in the top) to just display the error.
- When you have all the error displayed, select in the top right the default action as "Ignore" and for each extension for which you want to perform the fix, I personnally do the "copy into free SQL" and review the SQL statement to execute.
I select for the specific extension the action "Free SQL only".
So that, the fix can be done for this particular website and extension without anything as you put the default action as "ignore".
Once the fix is done, I re-do a check of the website to verify that the DB structure is correctly updated.
Remark: JMS Maintenance implement more functionalities than the core joomla database / fix.
It may happen that some error reported are "false error" due to some MySQL statement syntax that are not well recognized.
This is the reason why I prefer use the "Free SQL" and review the statement before executing the fix.
I hope that this procedure will help you.
|
|
|
|
|
|