When I installed this module and went to create a custom subscription, I got an error message telling me that there was an error in the SQL statement. I copied and pasted the SQL statement into phpMyAdmin and saw the problem: the table has a field called "fields," but "FIELDS" is a reserved word in MySQL. The field in the table needs to be renamed so that it is not a reserved word.

In the meantime, I was able to get the SQL statement to execute by putting `backticks` around the word `fields`.

Thank you for the module!

Comments

danepowell’s picture

This would seem to be caused by #266610: Function drupal_write_record() should enclose field names by backticks, so this isn't really a problem with Custom subscriptions. However, using a reserved word for a field name isn't really helping the issue :) I would recommend trying to get that issue fixed, and if there's too much resistance we should probably just change the field name.

danepowell’s picture

Version: 6.x-2.0-beta2 » 6.x-2.x-dev
Category: bug » task

Well it looks like that issue is not going to be addressed. Additionally, this error only applies to MySQL 4.x (FIELDS is not a reserved word in 5.x) - MySQL 4.x support will end in just a few months, and will not be supported at all by D7. So we have two options:

1) Rewrite the module using a different field name to support current 4.x users (ugh, but we shouldn't have been using a reserved word in the first place)
2) Tell people to upgrade to 5.x, since 4.x will effectively be dead in two months.

I'm leaning towards (2) at this point, but I don't know just how many people are still running on 4.x

benstallings’s picture

Status: Active » Closed (fixed)

Thanks for the tip, Dane. I wasn't aware that FIELDS is no longer a reserved word in 5.x I will ask the host to upgrade MySQL.