From: Luke Diamand Date: Thu, 10 Jul 2014 18:07:57 GMT Subject: Re: git p4 diff-tree ambiguous argument error Message-ID: <53BED67D.8080006@diamand.org> In-Reply-To: <1405013428825-7614774.post@n2.nabble.com> Is this using NFS, or local storage? On 10/07/14 18:30, Bill Door wrote: > $ git p4 sync --detect-branches --import-labels //main@all > ... Lots of useful information elided > fatal: ambiguous argument 'git-p4-tmp/8031': unknown revision or path not in > the working tree. > Use '--' to separate paths from revisions, like this: > 'git [...] -- [...]' > Command failed: ['git', 'diff-tree', > '6b3ef26a3e2635a5ff0170e15fdadb386672f8b9', 'git-p4-tmp/8031'] > > If I re-run the command, it works the second time. Of course there are > 73000+ commits. This is gonna take a while. > > I've done some debugging. It appears there is a timing problem between > git-p4 and git. > > The failure occurs in P4Sync.searchParent(). Even though a checkpoint is > sent to git (for fast-import) just prior to the call to searchParent() in > importChanges(), the file does not yet exist. I used pdb, paused the program > just before the call to diff-tree and the file was missing. After the > program exits due to the error the file exists (i.e. the OS flushed the > file). This is why re-running continues to work, there is an "old" file with > basically the same information laying around (dangerous). > > How can I get git (fast-import) to flush the file at the right time? > > $ git --version > git version 1.7.12.4 > $ python --version > Python 2.6.6 > OS: GNU/Linux 2.6.32-431.el6.x86_64 > > > > > -- > View this message in context: http://git.661346.n2.nabble.com/git-p4-diff-tree-ambiguous-argument-error-tp7614774.html > Sent from the git mailing list archive at Nabble.com. > -- > To unsubscribe from this list: send the line "unsubscribe git" in > the body of a message to majordomo@vger.kernel.org > More majordomo info at http://vger.kernel.org/majordomo-info.html >