Just tried to perform update 7301 and got this:
Update #7301
Failed: PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1: UPDATE {panels_pane} SET locks=; Array ( ) in db_add_field() (line 2808 of /var/www/rwt3/includes/database/database.inc).
The locks field has been added but is populated with null values.
All panels pages now appear blank and have no way of adding/modifying content in their config.
This is true even of new pages I create.
EDIT: I tried setting the locks field to an empty array like it appears it is meant to be but that didn't fix anything.
Going to the content tab of a panels page throws a warning like: "Theme key "panels_onecol" not found."
| Comment | File | Size | Author |
|---|---|---|---|
| #23 | 1353904-7301-fails.patch | 933 bytes | merlinofchaos |
| #18 | Drupal database update - Might and Magic Heroes VI wiki.png | 66.77 KB | Ace Cooper |
Comments
Comment #0.0
Shadlington commentedAdded update on the status of the locks field
Comment #0.1
Shadlington commentedAnother update
Comment #0.2
Shadlington commentedAnother another update
Comment #1
Letharion commentedI can confirm I see the PDOException as well.
My site does not break in any apparent way though. Pages still render, and the UI works.
I do get a new column, 'locks', which is filled with null values.
Comment #2
Letharion commented@Shadlington
I'm absolutely not sure about this, but it seems to me like there are two different problems here. Despite the error message, and the column being filled with NULL values, my site continues to function well. This being for a semi-large site that uses Panels for most of the user-facing content, I will stick my neck out and suggest your rendering issues are caused by something else.
Comment #3
merlinofchaos commentedThis means that the theme registry is somhow missing the themes. Doing a simple cache clear should fix this.
Comment #4
Shadlington commentedI reverted to a backup and tried the update again.
Exactly the same thing happened (and I double-checked that the theme registry problem wasn't there before the update).
Clearing the cache worked - thanks!
Comment #5
bryancasler commented@merlin, update 7301 failed. Since I'm using panels everywhere the whole page was blank. I cleared the cache per your suggestion and everything came back. However, no matter what else I try to do I can not get 7301 to succeed updating.
Comment #6
jawi commentedSame issue here!
can't update panels.
clearing cache doesn't help
Comment #7
zabelc commentedI saw this as well, and immediately afterwards my panels were completely blank both in my site and on the panels admin screens.
I cleared all my caches (drush cc all) 3 times (I've heard one cache clear is occasionally insufficient) and everything appears to be working
Comment #8
Shadlington commentedHrm, now I am unable to add new content to the panels - foolishly didn't test this before but I assume it is related as I have done nothing else to the test site since.
Comment #9
zabelc commentedI'll second Shadlinton, I can no longer add contest to panels via the GUI...this is pretty bad.
Comment #10
zabelc commentedOk, I added issue #1355300: Unable to Add Content to Panels for this add new content to panels issue. I even described a weird work-around that lets you add content.
Comment #11
noslokire commentedWow #7. I always tell people to flush cache 3 times jokingly, but it worked in this instance. Didn't work the 1st time, but I went with it, and it worked.
Same symptoms here, Panels ceased rendering, content couldn't be updated, and update 7301 wouldn't apply.
Comment #12
philsward commentedSame problem here with the update...
Clearing the cache gave me the content editor, then when I tried to add a piece of content, the ajax window disappeared and left my content editor blank. I saved the page, then decided to try clearing the cache again and my newly created content showed up and works as expected.
If you add content, try clearing the cache after saving it.
Comment #13
raulmuroc commentedPanels 7.x 3.x-dev of 27 Nov. Returns the following error when updating database:
The following updates returned messages
panels module
Update #7301
Failed: PDOException: SQLSTATE[HY000]: General error: 1 near "WHERE": syntax error: UPDATE {panels_pane} SET locks= WHERE ( (locks <> ) OR (locks IS NULL ) ) ; Array ( ) in db_add_field() (line 2808 of /usr/home/www/includes/database/database.inc).
Hope it is useful to improve ;)
Comment #14
SNaKeMe commentedUpdate #7301
Failed: DatabaseSchemaObjectExistsException: Das Feld panels_pane.locks kann nicht hinzugefügt werden: Feld bereits vorhanden. in DatabaseSchema_mysql->addField() (Zeile 323 von /.../includes/database/mysql/schema.inc).
Comment #15
SNaKeMe commentedAnd:
Update #7301
Failed: PDOException: SQLSTATE[42000]: Syntax error or access violation: 1064 You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1: UPDATE {panels_pane} SET locks=; Array ( ) in db_add_field() (Zeile 2808 von /.../includes/database/database.inc).
Comment #16
Letharion commentedA problem with the add content interface, that is separate from the schema upgrade, has been identified and hopefully has a fix here #1355300: Unable to Add Content to Panels.
Comment #17
patoshi commentedsame
Comment #18
Ace Cooper commentedThe same error remains after both updates for Panel 7.x-3.x-dev dated Nov 29, 2011 and Nov 30, 2011.
Comment #19
Letharion commentedWe are aware of the problem, and as far as anyone can tell, the error message is just cosmetic.
#1355300: Unable to Add Content to Panels comes from a separate problem that was committed at the same time.
18 posts of "me too" is only wasting maintainer time. If you don't have anything more to add, the please use the follow button instead of posting.
Comment #20
Arnion commentedThe problem is simple, the function AddField trying to update the field with the initial value does not take into account that must be serialized before using this value. Simply apply the function serialize to initial value.
Comment #21
karlsheaI can confirm slayer3's fix works.
Comment #22
jeffnine commentedSame error. Cleared cache multiple times, reran update, and then got this:
Failed: DatabaseSchemaObjectExistsException: Cannot add field panels_pane.locks: field already exists. in DatabaseSchema_mysql->addField() (line 323 of /includes/database/mysql/schema.inc).
Comment #23
merlinofchaos commentedCan someone test this patch on a pre-7301 database?
Comment #24
jeffnine commentedPatch tested. Works great. Thanks.
Comment #25
merlinofchaos commentedThanks for testing! Committed and pushed.
Comment #26
SNaKeMe commentedOkay thx the update work. But now i get these notice:
I found these http://drupal.org/node/1170358. They talk about that is a cache issue bute when i clear the cache the notice dont go away. any idea?
Comment #27
merlinofchaos commentedThose are probably not related. This update didn't make any changes to menu.
Unfortunately it's difficult to tell exactly where those come from; they stem from something putting incorrect data into hook_menu and it's really difficult to spot.
Sometimes it works to get into the code where ti's failing and use dsm() to see what the menu item is that caused it, but it requires some decent PHP and drupal knowledge to do that.
Comment #28
bryancasler commentedThe latest dev seems to have applied 7301 without a problem
Comment #29
SNaKeMe commentedWhat a fuxx ^^ After deactivating many modules and testing and clearing the cache thousend times ... i have the notice gone away ... the notice is gone after deactivating these module: "Views content panes" ... thank god its friday ;-)
Comment #31
Anonymous (not verified) commentedNot sure if this the right place, but I get this error with Panels (sorry, it's in Finnish translation):
DatabaseSchemaObjectExistsException: Taulu panels_node on jo olemassa. funktiossa DatabaseSchema->createTable() (rivi 657 tiedostossa /var/www/customers/cablexfi/public_html/includes/database/schema.inc).
I did some stupid things with Panels and restored from a backup that was prior to installing Panels. Now I cannot seem to get rid of the error no matter what I do.
I have read several threads and my questions is, could I just do the following to remedy the situation (without breaking anything more):
Delete the files at /sites/all/modules/panels
Drop the tables panels_display, panels_layout, panels_mini, panels_node, panels_pane, panels_rendered_pipeline
Reinstall Panels
?
In other words, is there relevant info about Panels somewhere else?
Please help, thanks! :)
Comment #32
merlinofchaos commentedIs the translation of that error basically that the panels_node table does not exist?
If that is the case, do the following:
Disable the module 'panels_node'.
Uninstall the module 'panels_node'. (On the modules page there is a tab for "uninstall"). This might give an error that it can't drop the offending table.
Re-enable the module 'panels_node'.
Panels_node module handles its table separately; the reason I suggest that it's just that module is that your error only mentions the one table. If there are other tables you might have to uninstall the Panels module.
Comment #33
Anonymous (not verified) commentedThe error says
DatabaseSchemaObjectExistsException: the Table panels_node already exists. in the function DatabaseSchema->createTable() (row 657 in the file /var/www/customers/cablexfi/public_html/includes/database/schema.inc).
Comment #34
merlinofchaos commentedAhh. Hm. That error can probably be ignored, though it might mean that necessary updates to the table may not have been created. You should still go through the uninstall and re-install process to insure the table gets dropped and created correctly.
Comment #35
Anonymous (not verified) commentedAfter disabling all parts of the Panels module (and clearing all caches just for the hell of it) there is no uninstall option.
I tried once by deleting the /sites/all/modules/panels files. Then it allowed me to reinstall Panels, but the error persists and the model isn't working.
Now I am just hoping for some quick way to get rid of whatever is corrupted so that I could reinstall correctly. I just don't know where the problem is in the database and what I might dare to drop.
Thanks for all the help!
Comment #36
merlinofchaos commentedThe uninstall page is a tab on the modules page. It can be found at admin/modules/uninstall.
If for some reason you have those tables and your Drupal install does not believe the modules are installed, then you can look at panels.install and panels_node.install (and other .install files) to find exactly which tables to drop. For the most part, the mysql command
show tables like 'panels%';will show you what you need.Comment #37
Anonymous (not verified) commentedThanks a lot!
I dropped the tables that begin with Panels, and deleted the module files on the server. Then reinstalled and everything works fine and I can continue using this great module!
Also after this operation the uninstall option is now there when I disable the Panels modules.
Comment #37.0
Anonymous (not verified) commentedUpdated again
Comment #38
lsolesen commented