While testing the update from 7.14 to 7.15 (as suggested by David ;-) I found that one of my sites which uses a postgresql DB fails to upgrade.

The error is:

$ drush updb
The following updates are pending:
system module :
  7074 -   Convert menu_links query strings to arrays.
Do you wish to run all pending updates? (y/n): y
SQLSTATE[42883]: Undefined function: 7 ERROR:  operator does not exist: bytea ~~* unknown                              [error]
LINE 4: WHERE  (options ILIKE '%query%')
HINT:  No operator matches the given name and argument type(s). You might need to add explicit type casts.
#2 system-update-7074-1706788-2.patch2.29 KBDavid_Rothstein
PASSED: [[SimpleTest]]: [MySQL] 39,352 pass(es).
[ View ]


This seems to stem from the use of ILIKE on a BLOB column (options), and should be exclusive to Postgres.

The fix may be similar to that in #1575790: Update #7002 fails on postgres - ILIKE operator on bytea not supported - the problem certainly is.

Status:Active» Reviewed & tested by the community
new2.29 KB
PASSED: [[SimpleTest]]: [MySQL] 39,352 pass(es).
[ View ]

Yikes. Thanks for testing and catching this!

I'm planning to commit the attached patch before the release... This will remove the update function contents, but leave the function itself in place (so it won't mess up anyone who has already run it on their site). I'm just uploading it here now to make sure it passes tests.

Then I'll reopen #1613554: Update menu link queries from 6's strings (the issue that added this function originally) so we can talk about adding it back as a new update function later.

Status:Reviewed & tested by the community» Fixed

OK, tests passed, so I committed this: http://drupalcode.org/project/drupal.git/commit/b7e3bb7

Thanks again for testing and catching this bug!

Status:Fixed» Closed (fixed)

Automatically closed -- issue fixed for 2 weeks with no activity.