alibaba / alibaba/arthas

tt -w获取指定bean然后执行指定方法时,long类型数据超过100万时,会出现ognl.MethodFailedException

Open
#2,589 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Java
Stars
37.6k
Forks
7.6k
Avg merge
1d 22h
Merged PRs (30d)
4

Description

- [ ] 我已经在 [issues](https://github.com/alibaba/arthas/issues) 里搜索,没有重复的issue。

### 环境信息

* `arthas-boot.jar` 或者 `as.sh` 的版本: 3.2.0
* Arthas 版本: 3.2.0
* 操作系统版本: xxx
* 目标进程的JVM版本:
openjdk version "1.8.0_282"
OpenJDK Runtime Environment (build 1.8.0_282-b08)
OpenJDK 64-Bit Server VM (build 25.282-b08, mixed mode)

* 执行`arthas-boot`的版本: 3.2.0

### 重现问题的步骤

1. tt -t org.springframework.web.servlet.mvc.method.annotation.RequestMappingHandlerAdapter invokeHandlerMethod
2. tt -i 1000 -w 'target.getApplicationContext().getBean("containerCargoApp").getByOrderId(1000000L)'

### 期望的结果
正常返回数据

What do you expected from the above steps?

### 实际运行的结果

实际运行结果,最好有详细的日志,异常栈。尽量贴文本。
[arthas@10]$ tt -i 1000 -w 'target.getApplicationContext().getBean("containerCargoApp").getByOrderId(1000000L)'
ognl.MethodFailedException: Method "getByOrderId" failed for object
xxx.center.order.application.ContainerCargoApp@505bc480 [java.lang.NullPointerException], visit /root/logs/arthas/arthas.log for more detail

```
把异常信息贴到这里
```
![image](https://github.com/alibaba/arthas/assets/83114564/fa20ed48-39fb-4a59-a7f7-0fc74c767ba5)

Contributor guide

Open the contributing guide

Research direction

Start by reproducing the reported `tt -t` and `tt -i 1000 -w` commands on Arthas 3.2.0 with `getByOrderId(1000000L)`, then inspect the `tt` watch-expression and OGNL evaluation path. Use the Arthas log and the reported `ognl.MethodFailedException`/`NullPointerException` to identify the failure; done means the invocation returns normally for long values above 1,000,000.

Written by the indexing model from the issue text.

Assessment

Tech stack
java
Domain
devtools
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.