jfrog / jfrog-cli

JFrog CLI is a client that provides a simple interface that automates access to the JFrog products.
https://www.jfrog.com/confluence/display/CLI/JFrog+CLI
Apache License 2.0
531 stars 229 forks source link

jfrog-cli on Mac (jf) is encountering excessive wake-ups #2216

Open enaess opened 1 year ago

enaess commented 1 year ago

Describe the bug

Looking into the Diagnostics Reports jf executable is encountering excessive wakeups. Here is one of many reports from my Mac mini

Date/Time:        2023-09-18 11:07:52.863 -0700
End time:         2023-09-18 11:08:11.233 -0700
OS Version:       macOS 12.6.5 (Build 21G531)
Architecture:     arm64e
Report Version:   35.1
Incident Identifier: 71C1FDCB-E63F-47B5-A253-67E42C508750

Data Source:      Microstackshots
Shared Cache:     EDC63512-477A-388B-ABA3-BD07CC57EE18 slid base address 0x18e514000, slide 0xe514000

Command:          jf
Path:             /usr/lib/dyld
Codesigning ID:   com.apple.dyld
Architecture:     arm64
Parent:           UNKNOWN [399]
PID:              47984

Event:            wakeups
Action taken:     none
Wakeups:          45001 wakeups over the last 18 seconds (2450 wakeups per second average), exceeding limit of 150 wakeups per second over 300 seconds
Wakeups limit:    45000
Limit duration:   300s
Wakeups caused:   45001
Wakeups duration: 18s
Duration:         18.37s
Duration Sampled: 8.88s
Steps:            4

Hardware model:   Macmini9,1
Active cpus:      8
HW page size:     16384
VM page size:     16384

Fan speed:        1724 rpm
Advisory levels:  Battery -> 2, User -> 2, ThermalPressure -> 0, Combined -> 2
Free disk space:  15.26 GB/228.27 GB, low space threshold 3072 MB

Heaviest stack for the target process:
  1  read + 8 (libsystem_kernel.dylib + 9748) [0x18e803614]

Powerstats for:   jf [47984] [unique pid 346929]
UUID:             0D7E1F3B-E8B2-3EDE-AD0E-4D74E4FC60CD
Path:             /usr/lib/dyld
Codesigning ID:   com.apple.dyld
Architecture:     arm64
Parent:           UNKNOWN [399]
UID:              501
Footprint:        37.69 MB
Pageins:          1 pages
Start time:       2023-09-18 11:08:02.279 -0700
End time:         2023-09-18 11:08:11.158 -0700
Num samples:      4 (100%)
Primary state:    3 samples Non-Frontmost App, Non-Suppressed, User mode, Effective Thread QoS Default, Requested Thread QoS Default, Override Thread QoS Unspecified
User Activity:    4 samples Idle, 0 samples Active
Power Source:     0 samples on Battery, 4 samples on AC
  3  <missing stack>
  1  read + 8 (libsystem_kernel.dylib + 9748) [0x18e803614]
    1  <Kernel mode>

  Binary Images:
           0x103c70000 -        0x103cebfff  dyld (960)                                 <0D7E1F3B-E8B2-3EDE-AD0E-4D74E4FC60CD>  /usr/lib/dyld
           0x18e801000 -        0x18e838fff  libsystem_kernel.dylib (8020.240.18.700.8) <57AFB522-CFA8-3ECD-BC2C-76099A28CE60>  /usr/lib/system/libsystem_kernel.dylib

Current behavior

Too many wake-ups on Mac mini

Reproduction steps

Run jf to upload binaries to artifactory

Expected behavior

No excessive wake-ups

JFrog CLI version

2.48.0

Operating system type and version

OS-X 12.6.5

JFrog Artifactory version

No response

JFrog Xray version

No response

enaess commented 1 year ago

I just installed jfrog-cli using homebrew, and hopefully there are symbols available there. Also noted, this is a diagnostics report and not actually a crash report. The upload at the time actually succeeds no problems - so I don't know? Maybe alter the chunk size to do a larger read would fix this??