Skip to content

Unable to cf push large jar file with mcafee antiviurs software  #1006

@randomtask1155

Description

@randomtask1155

when pushing a jar file that has 50k small files cf cli has to extract the jar file, perform resource matching, and zip up for upload.

After running perf when the cf push was generating the resource_match request we observed that cf was only consuming about 3 % cpu and the kernel was consuming about 25%. Further investigation found that the kernel usage was a result of antivirus software that is scanning on reads and writes which means the 50k files get scanned during extraction and during chksum. This is the cause for the delay.

this is impacting a CI pipeline because it takes more than 1 hour to push a single app like this witch does not allow us to perform constant builds

some workarounds we considered:

  • Disabling the antivirus allows the app to be pushed in just couple minutes.
    • this is not a valid workaround as per our security policy
  • Excluding the $TMPDIR form the antivirus scan could help
    • This will be difficult to implement because we have to modify a lot of existing CI pipeline to use these methods and a lot of jobs are run as all different users.
  • Deploy a local maven repository to store all the application dependencies and exclude dependencies from the jar file
    • This is possible however that would mean changing of internal development processes and updating existing applications. This would take a lot of time to implement

Would it be possible to have an option to skip resource matching and unpacking of the jar file?

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions