16 messages in com.perforce.perforce-user[p4] Unwanted new timestamps after su...
FromSent OnAttachments
Max.Ritter08 Dec 2004 05:58 
Noel Yap08 Dec 2004 06:28 
Robert Cowham08 Dec 2004 07:36 
Grills, Jeff08 Dec 2004 08:15 
Noel Yap08 Dec 2004 08:19 
chri...@ni.com08 Dec 2004 08:34 
Arnt Gulbrandsen08 Dec 2004 08:48 
Ivaylo Beltchev08 Dec 2004 08:55 
chri...@ni.com08 Dec 2004 09:20 
Max.Ritter08 Dec 2004 09:32 
Kevin Wang08 Dec 2004 10:51 
Noel Yap08 Dec 2004 11:45 
Alen Ladavac09 Dec 2004 00:45 
Chuck Karish17 Dec 2004 08:16 
Max.Ritter17 Dec 2004 08:36 
Chuck Karish17 Dec 2004 21:38 
Subject:[p4] Unwanted new timestamps after submit
From:Max.Ritter (Max.@brainlab.com)
Date:12/17/2004 08:36:57 AM
List:com.perforce.perforce-user

Hi Chuck,

thanks for your reply! It doesn't happen because of submitting unmodified files. The problem is that modified files are tested (i.e., compiled) before submitting them. In my opinion, this is very reasonable. Then, after submitting the files, Perforce gives them a new timestamp (if they are ktext). This makes "make" think that they need to be recompiled, which is not true, because they did not change since compiling them the last time.

I realize that they may change due to the keyword expansion, but most of them won't -- and even if, it would be nice to have a choice.

Perforce support opened an enhancement request for us, asking for a separate flag in the client workspace to determine the updating of timestamps in this case (similar to the modtime flag).

Max.

-----Original Message----- From: Chuck Karish [mailto:chuck.karish at gmail.com] Sent: Freitag, 17. Dezember 2004 17:16 To: Max.Ritter Cc: perforce-user at perforce.com Subject: Re: [p4] Unwanted new timestamps after submit

On Wed, 8 Dec 2004 14:58:26 +0100, Max.Ritter <Max.Ritter at brainlab.com> wrote:

we have the following problem with file timestamps and C++ files of type text+k:

In all client workspaces, the modtime flag is deselected to make sure that newly synced revisions of files will be recompiled. So, this is a must. However, now developers frequently run into the following scenario:

1. They open a file for edit, compile, and test.

2. Everything works, they are happy and submit the file.

3. After submitting, the compiler recompiles all the code compiled in step 1. If the modified/submitted file was a header file from a low-level library, this can take several hours :-(

This only happens because .cpp and .h files are declared as text+k in the typemap (and because modtime is off). Perforce rewrites them after submit, even if they don't actually contain RCS keywords.

If I'm following your description correctly it's happening because developers submit unmodified files to Perforce.

The fix is to have developers use 'p4 revert -a -c <changelist_#>' to exclude unmodified files from their submit requests. Sooner or later they'll stop opening files for edit that don't need changes.