The first version of the Clean Options plugin became available in April of 2007. Since then there have been a few bug fixes, a few enhancements, a few version compatibility updates, and couple of minor tweaks.
Two issues still remain that could, and will most likely, be handled differently, but it is believed that the current methods of dealing with them should suffice for the time being.
One relatively rare problem is in dealing with rows in the wp_options table that do not have option_name values. Although it is possible that some plugins or themes create options without a name, it is more likely that they alter the row's values incorrectly at some point in their code. Currently the Clean Options plugin uses the option_name values when first displaying the rows, then, if selected, the row contents, and, if again selected, deletes them. When a row in the wp_options table does not have an option_name value an error message is displayed to alert the user of the problem, but does not provide any further information about them or provide a way to remove them from the table.
TO DO: Find a way to at least display whatever information is available about these rows.
Another more common problem occurs when the wp_options table contains an extreme number of "rss_hash" rows. These rows are entered when RSS feeds are cached. Unfortunately, although WordPress does well at entering them into the table, it does not remove them. As the Clean Options plugin gathers the names of every row to display them, this can cause memory and timeout problems when there are an extreme number of them. Earlier changes added code to increase both the time limit and the memory limit, but the plugin author does not believe that simply "throwing more memory at it" is the best solution. The Clean Options Release Candidate version 1.0.0 deals with this problem by providing a way to "blind delete" them. Whereas deleting option rows that a plugin or theme might require is a very bad idea, deleting the RSS cache rows does not appear to cause any problems other than WordPress needing to reload the RSS feed content and re-add those that the blog is currently displaying back into the wp_options table. In this version, the "blind delete", i.e. "Delete ALL 'rss' Options", is not shown unless the wp_option table contains more than 250 rows total, including both plugin and theme options, and the "rss_hash" options.
TO DO: Find a way to minimize risk of any possible problems that might be caused by the removal of currently active RSS feed rows.
Possible solution 1: Find a way to "batch" the "rss_hash" options into smaller groups to avoid time and memory limit problems while still allowing for a preview of their contents prior to their removal.
Possible solution 2: Find a way to minimize the chance of currently active RSS feed rows from being removed during the "blind delete". That is, instead of deleting ALL "rss_hash" rows, only delete the oldest, and once the number of them is manageable in terms of time and memory usage, allow for the preview and removal of those remaining.
For more information please visit the Clean Options Plugin page.
This post is for comments, suggestions etc. If you need support for the plugin
- please visit the Mittineague Forums (registration required to post).
Comments regarding the following questions are desired and will be greatly appreciated.
1. Do you feel that the simple "blind delete" is a good enough solution to the "rss_hash" problem?
2. Would you prefer to have the plugin "blind delete" only the older "rss_hash" rows?
3. Or would you prefer to "batch" the rows into smaller groups and preview the contents prior to their removal?






