Skip to content

The JNA implementation seems unbarably slow on Windows (7) #143

@spangaer

Description

@spangaer

When running things like sbt eclipse SBT munches through the local Ivy repository very aggressively. On Windows it used the JNA code for this

at sbt.internal.io.WinMilli$.getModifiedTimeNative(Milli.scala:271)

and it seems to be unbearably slow. Many of the file accesses take multiple seconds twice, once to figure out a symlink that needs to be resolved (repo is relocated via symlink) and once to access the actual file. (observed via procmon)
Because these slow cases run in the hundreds (for certain projects; iterates multiple times too), it can take up to 15 minutes to munch through.

When enabling -Dsbt.io.jdktimestamps=true the same file access becomes sub millisecond. (I will re-iterate on Monday with a cold(er) system to verify).

This is a:

  • SBT 1.1.4
  • Intel i7 4th gen
  • Win 7
  • Spectre/Meltdown fixes enabled (given the milisecond story that might be of relevance)
  • Trend Micro AV and more anti-nasty protection

Metadata

Metadata

Assignees

No one assigned

    Labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions