Index: parser_common_syndication/parser_common_syndication.install
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedapi/parser_common_syndication/Attic/parser_common_syndication.install,v
retrieving revision 1.1.2.4.2.6
diff -u -p -r1.1.2.4.2.6 parser_common_syndication.install
--- parser_common_syndication/parser_common_syndication.install	10 Sep 2008 08:27:51 -0000	1.1.2.4.2.6
+++ parser_common_syndication/parser_common_syndication.install	15 Apr 2009 13:26:53 -0000
@@ -8,10 +8,10 @@ function parser_common_syndication_schem
   $schema['parser_common_syndication'] = array(
     'fields' => array(
       'url' => array(
-        'description' => t('The URL of the feed'),
+        'description' => t('The MD5 hash of feed URL'),
         'type' => 'varchar',
         'not null' => TRUE,
-        'length' => '255'),
+        'length' => '32'),
       'etag' => array(
         'type' => 'text',
         'not null' => FALSE),
@@ -63,3 +63,20 @@ function parser_common_syndication_unins
   
   variable_del('parser_common_syndication_cache');
 }
+
+/**
+ * Instead of textual URL, store MD5 in the parser_common_syndication table
+ */
+function parser_common_syndication_update_6101() {
+  $result = db_query("SELECT url FROM {parser_common_syndication}");
+  while ($url = db_fetch_array($result)) {
+    db_query("UPDATE {parser_common_syndication} SET url = '%s' WHERE url = '%s'", md5($url['url']), $url['url']);
+  }
+  $ret = array();
+  db_change_field($ret, 'parser_common_syndication', 'url', 'url', array(
+        'description' => t('The MD5 hash of feed URL'),
+        'type' => 'varchar',
+        'not null' => TRUE,
+        'length' => '32'));
+  return $ret;
+}
Index: parser_common_syndication/parser_common_syndication.module
===================================================================
RCS file: /cvs/drupal-contrib/contributions/modules/feedapi/parser_common_syndication/parser_common_syndication.module,v
retrieving revision 1.6.2.23.2.37
diff -u -p -r1.6.2.23.2.37 parser_common_syndication.module
--- parser_common_syndication/parser_common_syndication.module	6 Apr 2009 07:03:16 -0000	1.6.2.23.2.37
+++ parser_common_syndication/parser_common_syndication.module	15 Apr 2009 13:26:53 -0000
@@ -173,7 +173,7 @@ function _parser_common_syndication_feed
   // Only download and parse data if really needs refresh. 
   // Based on "Last-Modified" and "If-Modified-Since".
   $headers = array();
-  $db_result = db_query("SELECT etag, last_modified FROM {parser_common_syndication} WHERE url = '%s'", $url);
+  $db_result = db_query("SELECT etag, last_modified FROM {parser_common_syndication} WHERE url = '%s'", md5($url));
   while ($validate = db_fetch_array($db_result)) {
     $has_etag = TRUE;
     if (!empty($validate['etag'])) {
@@ -249,7 +249,7 @@ function _parser_common_syndication_feed
     else {
       // It's a tragedy, this file has to be exist and contain good data. 
       // In this case, repeat the stuff without cache.
-      db_query("DELETE FROM {parser_common_syndication} WHERE url = '%s'", $url);
+      db_query("DELETE FROM {parser_common_syndication} WHERE url = '%s'", md5($url));
       return _parser_common_syndication_feedapi_get($url, $username, $password);
     }
   }
@@ -260,10 +260,10 @@ function _parser_common_syndication_feed
     $result->headers['Last-Modified'] = isset($result->headers['Last-Modified']) ? $result->headers['Last-Modified'] : '';
   }
   if ($has_etag == TRUE) {
-    db_query("UPDATE {parser_common_syndication} SET etag = '%s', last_modified = '%s' WHERE url = '%s'", $result->headers['ETag'], $result->headers['Last-Modified'], $url);
+    db_query("UPDATE {parser_common_syndication} SET etag = '%s', last_modified = '%s' WHERE url = '%s'", $result->headers['ETag'], $result->headers['Last-Modified'], md5($url));
   }
   else {
-    db_query("INSERT INTO {parser_common_syndication} (etag, last_modified, url) VALUES ('%s', '%s', '%s')", $result->headers['ETag'], $result->headers['Last-Modified'], $url);
+    db_query("INSERT INTO {parser_common_syndication} (etag, last_modified, url) VALUES ('%s', '%s', '%s')", $result->headers['ETag'], $result->headers['Last-Modified'], md5($url));
   }
   $download_cache[$url] = $result->data;
   return empty($result->data) ? FALSE : $result->data;
