Question: max # files in single operation

Started by u7114, May 22, 2018, 07:28:15 PM

Previous topic - Next topic

u7114

Hello, and first of all thanks for this great tool!

I know ExifTool has powerful multifiles batch operations, but I use a legacy application where I override the performOnFile method to make any needed modification (shift timezone, rename files based on local time and user time, etc.).

After 144 files, the worker is waiting something, and I have to stop it and start a new instance of worker to process the unmodified files remaining.
This occurs always after the worker writes the 144th time a file at once. If we select 143 files, the worker stops as expected after the last file and we can select the remaining files and click on start.
When the parser reads only meta, we do not have this limit of 144 files.

I have search in the faq, the forums, and in the search engines, but without any info.
If anybody has a clue, i will be glad to read it.

StarGeek

I have run 10s of thousands of files in a single operation with exiftool without a problem, so exiftool by itself isn't the source of the problem. 

What is the nature of your legacy app?  I recently read where one person was having a problem with a Powershell script that wouldn't process more than 115 files when calling exiftool.  In this case it turned out to be a stdout buffer problem.  For what it's worth, here's the Stackoverflow question.
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

u7114

Thanks for this info.
I will digg into this direction.

The legacy app is a java swing client.

Phil Harvey

On some platforms there is a command-line-length limitation, which is a possible source of the problem.  The usual work-around for this is to use the ExifTool -@ option.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).