Skip to content

HystrixTimer when it initialize ScheduledThreadPoolExecutor does not set RemoveOnCancelPolicy for true #1998

@lovingcodesk

Description

@lovingcodesk

set follow configurations for some command key:

hystrix.command.fallbackcmd.execution.isolation.thread.timeoutInMilliseconds = 1000000000
hystrix.command.fallbackcmd.execution.isolation.strategy = SEMAPHORE
hystrix.command.fallbackcmd.execution.isolation.semaphore.maxConcurrentRequests = 1000
hystrix.command.fallbackcmd.fallback.enabled = true
hystrix.command.fallbackcmd.circuitBreaker.enabled = true

when it invoke TimerReference.clear(), it does not remove this thread from the queue in ScheduledThreadPoolExecutor,In the case of a large number of requests for long time under this hystrix command key will cause memory leak ,we encounter this problem at our production environment,it Influences service performance

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions