This patch implements fetching of available update status as a batch process. The patch is rough but should be working. I'm not completely satisfied with the various layers of caching in the module.

The patch introduces a cache (table {cache_l10n_update}) which holds the status of each remote po file. Cache expiry is based on the configurable update frequency (manual (= 1 hour), day, week). This cache table is shared with the data that was previously stored in Drupal's {cache} table.

Any review is appreciated!

Comments

tebb’s picture

Just updated a test site's modules and received the following error message:

i18n module

Update #7001
Failed: PDOException: SQLSTATE[42S02]: Base table or view not found: 1146 Table 'dbname.cache_l10n_update' doesn't exist: TRUNCATE {cache_l10n_update} ; Array ( ) in cache_clear_all() (line 170 of path/includes/cache.inc).

Should there be an update to create this table?

I'm a bit surprised about it saying 'i18n module' rather than 'l10n'.

tebb’s picture

I have done some clearing of caches and re-run update and now have the l10n cache table with 5 fields: cid, data, expire, created and serialized.

Consider #1 as fixed.

Valeratal’s picture

How create table cache_l10n_update manual ?

sutharsan’s picture

@Valeratal, no need to create the table. It is created by in the module.

sutharsan’s picture

Issue summary: View changes
Status: Needs review » Closed (won't fix)

Closing this issue in favour of the 7.x-2.x- branch. This branch is better suited for performance critical situations and further performance improvements will take place there.