alibaba/QLExpress

QLExpress3 历史问题修复

Open

#185 opened on Mar 18, 2022

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Java (1,113 forks)batch import
help wanted

Repository metrics

Stars
 (4,457 stars)
PR merge metrics
 (Avg merge 17d) (4 merged PRs in 30d)

Description

QLExpress3 积攒了比较多的历史问题,这里列举额如下:

  • 高精度计算溢出问题(除了这里列举的场景外还有很多有问题的场景,需要一一排查下)
String evalExpress = "a*2";

final ExpressRunner runner = new ExpressRunner(true, true);

DefaultContext<String, Object> nameMap = new DefaultContext<String, Object>();

nameMap.put("a", new BigDecimal(Long.MAX_VALUE));

// 结果为 -2
Object obj = runner.execute(evalExpress, nameMap, null, false, true);
  • 注释解析问题

参考 #337

Contributor guide