0

Running Drupal 7.26 with nothing fancy and have started to encounter a corruption issue with the menu system. We started seeing the following error (truncated to fit). Doing a drush or a manual clear cache doesn't fix it, setting menu_router.weight to NULL yes, truncating both the menu_links and menu_router tables still produces the error. Links oddly menu still appear on the site, but only some not all.

I suspect that the issue might be caused by a page view (using views3) with a set path, but I can't see why that would be as it is again just a normal path.

PDOException: SQLSTATE[HY000]: General error: 1366 Incorrect integer value: '' for column 
'weight' at row 9: INSERT INTO {menu_router} (path, load_functions, to_arg_functions, 
access_callback, access_arguments, page_callback, page_arguments, delivery_callback, fit, 
number_parts, context, tab_parent, tab_root, title, title_callback, title_arguments, 
theme_callback, theme_arguments, type, description, position, weight, include_file) VALUES 
.... (truncated) ....
(:db_insert_placeholder_184, :db_insert_placeholder_185, :db_insert_placeholder_186,     
:db_insert_placeholder_187, :db_insert_placeholder_188, :db_insert_placeholder_189, 
:db_insert_placeholder_190, :db_insert_placeholder_191, :db_insert_placeholder_192, 
:db_insert_placeholder_193, :db_insert_placeholder_194, :db_insert_placeholder_195, 
:db_insert_placeholder_196, :db_insert_placeholder_197,); Array ( 
.... (truncated) ....
[:db_insert_placeholder_180] => Ajax callback for view loading. 
[:db_insert_placeholder_181] => [:db_insert_placeholder_182] => 0 
[:db_insert_placeholder_183] => sites/all/modules/contrib/views/includes/ajax.inc 
[:db_insert_placeholder_184] => volunteering/opportunities [:db_insert_placeholder_185] => 
[:db_insert_placeholder_186] => [:db_insert_placeholder_187] => ctools_access_menu 
[:db_insert_placeholder_188] => a:1:{i:0;a:2:{s:4:"type";s:4:"none";s:8:"settings";N;}} 
[:db_insert_placeholder_189] => page_manager_page_execute [:db_insert_placeholder_190] => 
a:1:{i:0;s:13:"volunteering_";} [:db_insert_placeholder_191] => 
[:db_insert_placeholder_192] => 3 [:db_insert_placeholder_193] => 2 
[:db_insert_placeholder_194] => 0 [:db_insert_placeholder_195] => 
[:db_insert_placeholder_196] => volunteering/opportunities [:db_insert_placeholder_197] => 
Volunteering opportunities [:db_insert_placeholder_198] => t [:db_insert_placeholder_199] 
=> [:db_insert_placeholder_200] => [:db_insert_placeholder_201] => a:0:{} ) in 
_menu_router_save() (line 3837 of /var/mysite/dev/includes/menu.inc).
apaderno
  • 28,547
  • 16
  • 75
  • 90
mcvicar
  • 11
  • 1

1 Answers1

0

For some strange reason the function page_manager_list_page() in ctools page manager > page_manager.admin.inc wasn't setting a numeric weight. Not sure how or why it isn't checking it is not a an integer, but it doesn't which caused the issue.

mcvicar
  • 11
  • 1