Bug #66340

Processed files for storage 0 do not get updated when the original file changes

Added by Nils Blattner almost 4 years ago. Updated over 3 years ago.

Status:
Closed
Priority:
Could have
Assignee:
-
Category:
File Abstraction Layer (FAL)
Target version:
-
Start date:
2015-04-09
Due date:
% Done:

0%

TYPO3 Version:
6.2
PHP Version:
Tags:
Complexity:
easy
Is Regression:
No
Sprint Focus:

Description

Hi there

When files in storage 0 (possibly other storages aswell) get changed on the file system, the processed file does not get updated with the new data.
This is quite a common case (FTP, other sync from external systems) and can be solved quite easily.

  • Make TYPO3\CMS\Core\Resource\ProcessedFileRepository->createDomainObject() recognize when a processed file has changed (preferably filemtime vs tstamp of sys_file_processedfile)
  • Make TYPO3\CMS\Core\Resource\ProcessedFileRepository->findOneByOriginalFileAndTaskTypeAndConfiguration() include the change time of the original file (again preferably filemtime) in the configurationsha1 (and of course in ProcessedFile for storing)

What would be the preferred way?

Most simple use case:
  1. Have an <f:image fluid tag that shrinks a given File-object
  2. Replace the underlying file via FTP

Kind regards
Nils


Related issues

Related to TYPO3 Core - Task #64196: Make it possible to re index files from storage 0 Rejected 2015-01-08

History

#1 Updated by Stephan GroƟberndt almost 4 years ago

  • Priority changed from Must have to Could have

You can add a file indexer task in scheduler instead.

#2 Updated by Frans Saris almost 4 years ago

  • Status changed from New to Needs Feedback

For all storages except storage 0 you can setup a scheduler task to update the sys_file and sys_file_metadata info when a file is changed from outside of TYPO3.

I can also recommend to setup the scheduler task when you changes files from outside TYPO3 also to prevent errors when files are deleted and TYPO3 doesn't know about that.

IMO the preferred way is to create the scheduler task as described in #64196 as we want to prevent unneeded file system calls during site rendering. For local storage that wouldn't be that "heavy" but FAL can also handle remote storages.

I'm for closing this issue and to further with the solution described in #64196.

gr. Frans

#3 Updated by Nils Blattner almost 4 years ago

Does the Scheduler Task also delete potentially old Processed files?

Cheers
Nils

#4 Updated by Frans Saris almost 4 years ago

No, that happens when the system creates the new processed file.

#5 Updated by Alexander Opitz over 3 years ago

  • Status changed from Needs Feedback to Closed

No feedback within the last 90 days => closing this issue.

If you think that this is the wrong decision or experience this issue again, then please write to the mailing list typo3.teams.bugs with issue number and an explanation or open a new ticket and add a relation to this ticket number.

Also available in: Atom PDF