On 20 Nov 2005 at 7:18, dhbailey wrote:

> I understand what you're saying, David, in that if I had a lengthy
> session where 150 files were used, and then ended that session and at
> a later date ran Finale again on a shorter session, logic might
> indicate that the first 20 (for example) files might be from the
> newer, shorter session.

I have only Finale 2K3 and the demo of 2K5, and both use only 15 temp 
files in any one session, and never more than that. I've tried 
opening a lot of files and editing, but it never changes from the 
default 15.

This is something we already knew, as we were told a long time ago 
that when you open a file, its data is spread across multiple temp 
files, and each temp file has data from multiple Finale files in it. 
It was never clear why Coda chose this method, but one thing it would 
accomplish would be to make copying data between files very fast 
(since in the temp file, the corresponding data structures would be 
in the same file, and copying from one to another would be a matter 
of changing pointers, rather than writing data to different files). 
That same structure was also suspected of leading to the old file 
overwrite bug.

My understanding is that Finale 2006 has a different temp file 
architecture entirely, so the specifics of my observations in this 
thread about temp files do not necessarily apply directly to 2006. 
But the basic idea is going to be the same, that management of temp 
files is probably something that's managed through a single set of 
subroutines that are very easy for a programmer to manage. That is, a 
change in the temp file architecture should be something that is a 
black box to the rest of the application.

That doesn't mean things can't go wrong, but it limits the places 
where the code can be bollixed up to one sub-module of the bigger 
project.

> But what I observed was what appeared to be a random interspersing of
> dates, where the first x files were from the older date, and that the
> more recent files were scattered among higher file names.

Well, there are two problems discussed in this thread, one of which 
we all agree on, and the other of which I don't think actually 
happens the way you allege:

1. Finale doesn't always delete its temp files when it exits.

2. Finale sometimes re-uses the file data left over in temp files 
from previous sessions.

It's #1 that is not in dispute. Where there *has* been difference on 
that subject is over whether it's a serious or a minor problem. For 
me (who was yesterday informed that he's a lightweight user of 
Finale), I've never had any serious problems that were solved by 
cleaning up leftover temp files.

Secondly, we should distinguish between temp files left undeleted 
after an orderly Finale shutdown and temp files orphaned when Finale 
crashes and exits unexpectedly. One can hardly expect Finale to be 
able to clean up after itself when it crashes, though one might 
expect Finale to clean up orphaned files the next time it starts 
(especially given that the temp files have nothing to do with the 
AutoSave, so, unlike, say, MS Word, aren't of any use in recovering 
data after a crash).

Finale crashes fairly often in comparison to most of the other 
applications I use, so it's not at all uncommon for there to be temp 
files orphaned by crashes.

But the second allegation I find very, very unlikely, and it would be 
difficult to prove that it's the case. That is, how, exactly, could 
you know that Finale is re-using a file's actual *data* and not just 
deleting it and creating a new file with the same name, or zeroing 
out the data in the existing file and starting over with all fresh 
data? It would first of all be extremely unlikely for Finale's 
programmers to make this kind of mistake (it's a completely obvious 
issue to avoid in any temporary data scenario -- you've got to check 
for pre-existing data before initializing your temporary data 
structures).

I can't even think of a way to test this, except to make copies of 
the orphaned temp files before you launch Finale and then checking to 
see if the dates of any of them get updated to the current date, and 
then force quitting Finale (to leave the orphaned files), then doing 
a byte-by-byte comparison of the copy of the file before Finale 
opened to the current version of it.

But first off we don't even know how much overlap there is between 
Finale's temp files when they are being created and deleted in an 
orderly fashion.

-- 
David W. Fenton                        http://www.bway.net/~dfenton
David Fenton Associates                http://www.bway.net/~dfassoc

_______________________________________________
Finale mailing list
Finale@shsu.edu
http://lists.shsu.edu/mailman/listinfo/finale

Reply via email to