Clone Tools
  • last updated a few seconds ago
Constraints
Constraints: committers
 
Constraints: files
Constraints: dates
make inner classes static where possible

Signed-off-by: Steven Crockett <crockett.j.steven@gmail.com>

    • -1
    • +1
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 42 more files in changeset.
Revert "Revert "Merge branch 'release'""

This reverts commit 67b8bb8f18f854f45a2f5ec52cc9c8a25981e2f2.

This restores the merge attempt from earlier.

    • -3
    • +1
    ./health/memory/DefaultMemoryManager.java
  1. … 65 more files in changeset.
Revert "Merge branch 'release'"

This reverts commit c7fdc455dcb9a8016af0ae9bc8b4c43fde1e2d06, reversing

changes made to 9f70d52b74dbc8c71381781b6c155474031b3cf8.

The changes need a wrapper as there are API changes. Reverting for now.

    • -1
    • +3
    ./health/memory/DefaultMemoryManager.java
  1. … 65 more files in changeset.
Reduce the amount of logging that is periodically emitted by an idle daemon

    • -3
    • +1
    ./health/memory/DefaultMemoryManager.java
  1. … 2 more files in changeset.
Apply `Inner class may be 'static'` inspection the whole project

    • -1
    • +1
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 41 more files in changeset.
Remove synthetic accessors for internal private symbol references

    • -9
    • +12
    ./health/memory/DefaultMemoryManager.java
    • -0
    • +3
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 901 more files in changeset.
Remove synthetic accessors for internal private symbol references

    • -9
    • +12
    ./health/memory/DefaultMemoryManager.java
    • -0
    • +3
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 901 more files in changeset.
Remove synthetic accessors for internal private symbol references

    • -9
    • +12
    ./health/memory/DefaultMemoryManager.java
    • -0
    • +3
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 889 more files in changeset.
Remove synthetic accessors for internal private symbol references

    • -9
    • +12
    ./health/memory/DefaultMemoryManager.java
    • -0
    • +3
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 896 more files in changeset.
Remove synthetic accessors for internal private symbol references

    • -9
    • +12
    ./health/memory/DefaultMemoryManager.java
    • -0
    • +3
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 901 more files in changeset.
Remove synthetic accessors for internal private symbol references

    • -9
    • +12
    ./health/memory/DefaultMemoryManager.java
    • -0
    • +3
    ./health/memory/MemInfoOsMemoryInfo.java
  1. … 901 more files in changeset.
Make Linux /proc/meminfo parser thread safe

    • -1
    • +2
    ./health/memory/MemInfoOsMemoryInfo.java
Upgrade to new version of native-platform.

    • -2
    • +2
    ./health/memory/NativeOsMemoryInfo.java
  1. … 13 more files in changeset.
Make totalMemory and freeMemory consistent

We were using different data sources for total and free physical

memory on Linux and MacOS, which lead us to detect memory pressure

were there was in fact none, e.g. when running in containers with

resource limits.

We now get both total and available memory from the same OS specific

data source.

    • -21
    • +0
    ./health/memory/AvailableMemory.java
    • -19
    • +7
    ./health/memory/DefaultOsMemoryInfo.java
    • -27
    • +0
    ./health/memory/MBeanAvailableMemory.java
    • -0
    • +35
    ./health/memory/MBeanOsMemoryInfo.java
    • -0
    • +154
    ./health/memory/MemInfoOsMemoryInfo.java
    • -132
    • +0
    ./health/memory/MeminfoAvailableMemory.java
    • -0
    • +39
    ./health/memory/NativeOsMemoryInfo.java
    • -36
    • +0
    ./health/memory/NativeOsxAvailableMemory.java
    • -27
    • +0
    ./health/memory/TotalPhysicalMemoryProvider.java
  1. … 9 more files in changeset.
Fix handling of InterruptedExceptions

These exceptions were handled incorrectly throughout the whole

codebase, usually rethrown without restoring the interrupt status

or discarded entirely. This means that the system would not stop

executing even though the user wanted it to. In some cases this

also left the system in an inconsistent state, leading to deadlocks.

The most notable changes include:

- UncheckedException.rethrow automatically restores the interrupt status

- AsyncDispatch is guaranteed to deliver its messages, even when interrupted

- ExecHandle cancels the started process if it is interrupted while waiting

- ExecHandle disconnects from the process' output before killing it

- The worker API cancels the started work items if it is interrupted

- ManagedExecutors shut down immediately if they are interrupted while stopping

- We no longer log exceptions caused by interruption to the console

- Interrupting our caches no longer leaks file locks

  1. … 38 more files in changeset.
Some fixed to `DefaultExecHandle` to ensure listeners are notified before `waitForFinish()` completes and that exceptions thrown by the listeners are handled and forwarded to the waiting thread.

  1. … 2 more files in changeset.
Changed process execution infrastructure so that it no longer creates 2 threads to forward content to the process' stdin when there is nothing to forward (which is the default).

  1. … 14 more files in changeset.
Changed the process forking infrastructure so that it attempts to reuse threads rather than creating 3 or more threads per process that is forked.

There is now a global `ExecFactory` service that manages the infrastructure, including a pool of threads. It provides various factory methods to create instances of `ExecHandleBuilder`, `ExecAction`, `JavaExecHandleBuilder` and `JavaExecAction` backed by this infrastructure.

Replaced all direct instantiation of these types with usages of these factory methods.

    • -0
    • +28
    ./StreamsHandler.java
  1. … 43 more files in changeset.
Immediately stop thread if when process finishes

  1. … 7 more files in changeset.
Copy under lock, iterate out of lock

    • -7
    • +10
    ./health/memory/DefaultMemoryManager.java
Fix `ConcurrentModificationException`

This commit adds guards around `holder` to make sure the list is not modified concurrently.

This fixes #2452, which was seen under heavy load.

    • -3
    • +7
    ./health/memory/DefaultMemoryManager.java
  1. … 1 more file in changeset.
Replace usages of org.gradle.api.Nullable

With javax.annotation.Nullable.

  1. … 460 more files in changeset.
Simplify executor relationships

    • -2
    • +2
    ./health/memory/DefaultMemoryManager.java
  1. … 46 more files in changeset.
Delay memory info until first interval has passed

    • -1
    • +1
    ./health/memory/DefaultMemoryManager.java
Fix NativeOsxAvailableMemory error handling

This fixes ApplyPluginIntegSpec that generates ProjectBuilder based

tests which in turn doesn’t have native integrations enabled.

Sample macOS system memory using native-platform instead of vm_stat

See #1270

    • -7
    • +1
    ./health/memory/DefaultOsMemoryInfo.java
    • -0
    • +33
    ./health/memory/NativeOsxAvailableMemory.java
    • -126
    • +0
    ./health/memory/VmstatAvailableMemory.java
  1. … 7 more files in changeset.
Changed a couple more projects to use `java-library` plugin. Also inject Groovy as a test compile dependency for all projects, and removed the declaration from various project's build files.

    • -3
    • +3
    ./health/memory/DefaultMemoryManager.java
  1. … 34 more files in changeset.
Make Os/JvmMemoryInfo only provide snapshots

    • -4
    • +2
    ./health/memory/DefaultJvmMemoryInfo.java
    • -7
    • +3
    ./health/memory/DefaultOsMemoryInfo.java
    • -10
    • +0
    ./health/memory/DisabledOsMemoryInfo.java
    • -0
    • +27
    ./health/memory/TotalPhysicalMemoryProvider.java
  1. … 3 more files in changeset.
Use an approximation for memory usage when it hasn't been reported

    • -0
    • +84
    ./health/memory/MaximumHeapHelper.java
  1. … 6 more files in changeset.
Cleanup of memory interfaces