Skip to content

Sync using an arguments file fails frequently. [p4vfs -x {file} sync] #42

@pmintusEA

Description

@pmintusEA

We very heavily rely on argument files when performing a syncing using p4.exe. It allows us to filter out unnecessary files. When we ported over to p4vfs.exe we continued to use an argument file. However I have recently noticed that they don't always succeed.

The more files to sync, the greater the chance of failure. I cannot tell if there is a safe minimum.

This seems to only occur when using an arguments file. I have not been able to reproduce the issue without an arguments file. sync and populate with an arguments file both have the same issue.

At around 25,000 files I see about a 1/6 success rate.

When it fails I have seen the following:

  • Exit code will always be 1
  • All files are missing. I have not encountered a partial sync.
  • The p4 have table may sometimes be updated
  • The error below may sometimes be printed out
  • It might fail immediately, or it may first print out all of the files in the arguments file and then after a while fail
SocketModelClient.SendCommand exit with exception: One or more errors occurred.

I have attached a powershell script that I have been using to verify this. To use this script, you will have to have your p4 environment set up so that executing p4vfs sync would just start a sync.

# Tests p4vfs populate using an argument file to perform the sync
# .\p4vfs-test.ps1 -max 10000 will limit the sync to 10000 files
# .\p4vfs-test.ps1 -nofile will not use an argument file
# .\p4vfs-test.ps1 -sync will use sync instead of populate

p4vfs-test.ps1.txt

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions