anthraxx/intellij-awesome-console

NumberFormatException

trustin opened this issue · 3 comments

Thanks a lot for writing an awesome plugin first of all. I'm currently seeing the following exception repetitively popping up:

java.lang.RuntimeException: Error while applying awesome.console.AwesomeLinkFilter@12b3c30a to '17:36:00.916 [armeria-common-worker-epoll-2-1] DEBUG c.l.a.server.logging.LoggingService - [sreqId=ff56dfd9, chanId=2319e123, raddr=127.0.0.1:40340, laddr=127.0.0.1:35263][h1c://infinity/jsp/large.jsp#GET] Request: {startTime=2020-11-25T08:36:00.891Z(1606293360891972), length=0B, duration=24271µs(24271691ns), scheme=none+h1c, name=GET, headers=[:method=GET, :path=/jsp/large.jsp, :scheme=http, host=127.0.0.1:35263, user-agent=Apache-HttpClient/4.5.12 (Java/14.0.2)]}
'
	at com.intellij.execution.filters.CompositeFilter.applyFilter(CompositeFilter.java:82)
	at com.intellij.execution.impl.AsyncFilterRunner$HighlighterJob.analyzeLine(AsyncFilterRunner.java:231)
	at com.intellij.execution.impl.AsyncFilterRunner$HighlighterJob.analyzeNextLine(AsyncFilterRunner.java:220)
	at com.intellij.execution.impl.AsyncFilterRunner$HighlighterJob.access$200(AsyncFilterRunner.java:188)
	at com.intellij.execution.impl.AsyncFilterRunner.runTasks(AsyncFilterRunner.java:148)
	at com.intellij.util.RunnableCallable.call(RunnableCallable.java:20)
	at com.intellij.util.RunnableCallable.call(RunnableCallable.java:11)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.insideReadAction(NonBlockingReadActionImpl.java:472)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$attemptComputation$2(NonBlockingReadActionImpl.java:429)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1106)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runInReadActionWithWriteActionPriority$0(ProgressIndicatorUtils.java:75)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.lambda$runWithWriteActionPriority$1(ProgressIndicatorUtils.java:129)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:166)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:627)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:572)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:61)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:153)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runWithWriteActionPriority(ProgressIndicatorUtils.java:118)
	at com.intellij.openapi.progress.util.ProgressIndicatorUtils.runInReadActionWithWriteActionPriority(ProgressIndicatorUtils.java:75)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.attemptComputation(NonBlockingReadActionImpl.java:437)
	at com.intellij.openapi.application.impl.NonBlockingReadActionImpl$Submission.lambda$transferToBgThread$0(NonBlockingReadActionImpl.java:370)
	at com.intellij.util.concurrency.BoundedTaskExecutor.doRun(BoundedTaskExecutor.java:222)
	at com.intellij.util.concurrency.BoundedTaskExecutor.access$200(BoundedTaskExecutor.java:29)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1.execute(BoundedTaskExecutor.java:201)
	at com.intellij.util.ConcurrencyUtil.runUnderThreadName(ConcurrencyUtil.java:210)
	at com.intellij.util.concurrency.BoundedTaskExecutor$1.run(BoundedTaskExecutor.java:190)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.lang.Thread.run(Thread.java:834)
Caused by: java.lang.NumberFormatException: For input string: "1606293360891972"
	at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:65)
	at java.base/java.lang.Integer.parseInt(Integer.java:652)
	at java.base/java.lang.Integer.parseInt(Integer.java:770)
	at awesome.console.AwesomeLinkFilter.detectPaths(AwesomeLinkFilter.java:261)
	at awesome.console.AwesomeLinkFilter.getResultItemsFile(AwesomeLinkFilter.java:130)
	at awesome.console.AwesomeLinkFilter.applyFilter(AwesomeLinkFilter.java:68)
	at com.intellij.execution.filters.CompositeFilter.applyFilter(CompositeFilter.java:76)
	... 28 more

How about using Long.parseLong() in lieu of Integer.parseInt()? If the number is even greater than Long.MAX_VALUE, we could silently ignore it or fall back to BigInteger.

Thanks @anthraxx for fixing this. 🙇

You're welcome :)
I would be quite happy if you could drop a rating in the marketplace 🐱
have a wonderful day

⭐⭐⭐⭐⭐