QDF file timestamp not updating as expected

brpqkn
brpqkn Member ✭✭
I know there is no way, unfortunately, to do a ":Save" on the QDF file as in other programs, but I did expect the timestamp to update when I make changes to the file such as accepting a transaction.

This happens inconsistently. My time timestamp updated yesterday morning. This morning I accepted transactions. The QDF file timestamp, however, is still from yesterday.

Is there a way to set this to update every time?

I do keep Quicken open, and I know that closing it will update the timestamp, but I'd rather not have to restart each day.

Cheers.

Answers

  • Chris_QPW
    Chris_QPW Member ✭✭✭✭
    There isn't any way to control when Quicken is going to update the data file in a way that will update the timestamp.
    Personally, I believe it to be a bad practice to keep Quicken running when you aren't using it.
    Signature:
    This is my website: http://www.quicknperlwiz.com/
  • UKR
    UKR SuperUser ✭✭✭✭✭
    brpqkn said:
    ...
    I do keep Quicken open, and I know that closing it will update the timestamp, but I'd rather not have to restart each day.
    ...
    I rather wish you would close Quicken when you're done working with it every day. And configure Quicken to create a backup of your data file every time you close Quicken.  That minimizes the number of lost changes since the last backup, should you have to restore your data file after something bad happened.

    How to properly set up Quicken Backup
    How to make Quicken create a backup for you automatically every time you close Quicken
    What Quicken backups are available where?

    For the sake of this discussion it is assumed that your Quicken data file is located in the Default (and recommended) place: C:\Users\username\Documents\Quicken
    It is further assumed that your Quicken data file is named QDATA.QDF

    Review the backup settings available in Quicken (under Edit / Preferences / Backup).

    In there you will find two types of backup: Automatic and Manual Backup.

    Automatic Backup should be enabled and by default goes to a \Backup folder that's part of the folder which contains your current Quicken data file, e.g. \Documents\Quicken\Backup. Set it to create a backup after running Quicken [1] times and to keep [9] (or more, your choice) backup copies.
    The file name for Automatic Backup files contains a date and time stamp as part of the file name, e.g. QDATA-2020-03-22.PM03.45.QDF-backup

    To create a Manual Backup copy of your Quicken data file on an external device (USB-hard drive or USB memory stick recommended), put a checkmark at "Manual Backup Reminder" to enable the function and set "Remind me after running Quicken [xx] times" to [1].

    Click OK to save the changes.

    From now on, when you close Quicken using the red X button, you will get a popup window.

    When you get this window for the first time, on some versions click the radio button for "Backup on my computer".
    Change the Backup File name's drive letter and path to point to your external device so that it looks something like this: E:\Quicken Backup\QDATA-2020-04-01.QDF-backup
    or use the Change button and work your way through the dialog.

    Do not change the filename portion! Just overtype the drive letter and choose a backup folder name. If the folder does not exist, it will be created.

    Also choose the option to "Add date to backup file name".

    Every day when you run Backup or close Quicken, an additional backup file is created. Without the Add Date option you only have 1 backup copy which is overwritten every day ... and that may prove bad in a problem recovery situation.

    Allow this backup to run to save the changes made on the screen.

    Of course, once in a while you will have to go in and delete some of the oldest backup files, at your discretion, to avoid filling up your USB device.

    One can never have enough backups of a Quicken data file. BTDTGTS to prove it!

  • brpqkn
    brpqkn Member ✭✭
    Thanks for the comments. I was hoping to avoid closing every day, but it seems that that's the only way to assure that the file is updated for new transactions.

    I do make periodic backups (manually) to a separate location. if I close Quicken daily, then the main QDF file will get updated with the latest data. Since I have that backed up the the Cloud, I'm not sure that also having an automatic backup each time is necessary since it will contain the same data. THe main QDF file will on;y have the latest version, of course, but that seems OK.

    Cheers.
  • q_lurker
    q_lurker SuperUser ✭✭✭✭✭
    I too favor closing Quicken when not actively using it. I find the longer I have the file open, the less responsive it becomes (a subjective opinion). 

    I do believe that a backup (Ctrl-B) done while the file is open will close the file, create the backup, and then reopen the file. That should update the time stamp as you would like. Whether that process is really any more productive for you is for you to identify. 
  • Chris_QPW
    Chris_QPW Member ✭✭✭✭
    brpqkn said:
    Since I have that backed up the the Cloud, I'm not sure that also having an automatic backup each time is necessary since it will contain the same data.
    I hope you aren't talking about Sync to Mobile/Web since that is only a partial copy of your data file.  It isn't a "cloud backup".

    I agree with @q_lurker that manual backups should be closing the data file and as such the timestamp should be updated at that point.  Is this different than what you are seeing?
    Signature:
    This is my website: http://www.quicknperlwiz.com/
  • brpqkn
    brpqkn Member ✭✭
    Thanks again. My cloud sync is to send the entire QDF file to a cloud backup service, unrelated to Quciken. So this automatically saves the whole file when it updates.

    Manual backups do update the timestamp. But I don't make them daily. I make them "periodically" since the base QDF file is stored in my backup service. So, if the file were to update on changet I would automatically get a backup. since it doesn't backup on change reliably, I can certainly close Quicken to make this happen. But no need to necessarily do a dated backup each time in this case.

    Cheers.
  • q_lurker
    q_lurker SuperUser ✭✭✭✭✭
    Outside my area, but I would be very cautious with regard to automatically backing up the base QDF file.  In particular as I understand it, if the backup routine grabs the file to backup while Quicken is trying to write again to it, trouble can arise, corruption can develop.  Even in the scenario I suggested, Quicken could be trying to reopen the file at the same time the your auto-backup system is trying to copy it.  Supposedly not a good thing.      
  • Chris_QPW
    Chris_QPW Member ✭✭✭✭
    I did a bit of a test.  I added a transaction, and then made a copy of the data file with Quicken still open.
    The file timestamp wasn't changed on the copy but was for the original data file when I closed Quicken.

    Opening the copy, I see that the transaction is in fact there.

    I suspect what is happening is that Quicken is in fact updating the QDF file contents, but since it is in fact a compressed file with the actual QDF file/database in it, it can do that without the timestamp changing.

    Which begs the question that @q_lurker talks about.  Quicken is using a database, and databases should never be updated "live" unless there is an API or such that can ensure that they are in a consistent state.  Databases make heavy use of "pointers" to things and as such both the pointer and what is being pointed at need to be finished updating before a backup is done.  For the most part Quicken has very little that it has to update, and as such it would be very difficult to actually catch it at the wrong time, but it is still possible, especially while it is doing things like downloading transactions.

    So, what "triggers" the automatic backup?
    Clearly it is ignoring the lock that Quicken puts on the data file for this very reason.
    And given that the timestamp isn't reliable for knowing when Quicken has updated the database, that shouldn't be the trigger either.

    If on the other hand the backup is done say once a night when you know that Quicken is idle, then most likely there wouldn't be any problems with the backup.
    Signature:
    This is my website: http://www.quicknperlwiz.com/
  • brpqkn
    brpqkn Member ✭✭
    @q_lurker , @Chris_QPW ,

    This is a point I hadn't known about so clearly hadn't considered. The update triggers then the timestamp changes. I would hope that Quicken wouldn't update the file in such a way that the timestamp changed until it was done doing its database stuff. But I don't know for sure.

    sounds like update/close really is the safest thing here as Quicken will certainly finish its business before closing. Intermediate timestamp update on transaction acceptance now seems like something I shouldn't want :)

    Cheers.
  • Chris_QPW
    Chris_QPW Member ✭✭✭✭
    brpqkn said:
    The update triggers then the timestamp changes. I would hope that Quicken wouldn't update the file in such a way that the timestamp changed until it was done doing its database stuff. But I don't know for sure.
    Nope, you can't even count on Quicken to release the file lock at a certain time.

    But more to the point, in most cases it isn't the program that changes the timestamp, it is the system call for the write that does it.  The timestamp is the "modified time", clearly any write is a modification.  And in the case of a database, you might have to write multiple records in different parts of the file for it to "finish" and be consistent.  Part of the problem is also that Quicken's database is so old.  Modern databases have systems for recovering from such situations, but the older ones like Quicken's didn't.

    Note that cloud backup software like Dropbox and OneDrive do wait for Quicken to remove the lock on the data file before trying to send the data to the server.  So, one would think that would work fine.  But in reality, Quicken doesn't control when it locks and unlocks, instead it is just telling the operating system to lock on open, and unlock on close (which is very standard for any application that doesn't want another to mess with the data file (Think Excel).  The problem is that Quicken opens and closes the data file in a few situations, like backup, validate and repair, ...  When the lock is released, the cloud service might jump in and start its sync, well it locks the data file to do that, for basically the same reason.  It needs a file that isn't being changed as it copies it to the server.  That lock prevents Quicken from opening the data file again, and it will throw errors because that.
    Signature:
    This is my website: http://www.quicknperlwiz.com/
  • brpqkn
    brpqkn Member ✭✭
    Thanks. I'll probably periodically do some checks on the backup files to see if they open properly, If I do enough and they are OK, it will increase my confidence that things are written at the right time. And I do make periodic manual backups within Quicken.

    If I do find issues with any of my could backups, I'll move to backing up each time I close Quicken and closing daily (which I'm now going to do anyway).

    Cheers.
This discussion has been closed.