NPE of decryptCallbackResultInfo in GetBlobOperation
@zzmao is already working on this.
Since Jan 24, 2019.
- Dominant language
- Java
- Stars
- 1.8k
- Forks
- 298
- Avg merge
- 21h 43m
- Merged PRs (30d)
- 9
Description
There is case causing NPE in GetBlobOperation. An instance of stack is as follow:
```
2019/01/17 15:42:37.472 ERROR [NettyResponseChannel] [RequestResponseHandlerThread-0] [ambry-frontend] [] Internal error handling request /xxxxxxxx.pdf/BlobInfo with method GET
com.github.ambry.rest.RestServiceException: com.github.ambry.router.RouterException: Get poll encountered unexpected error Error: UnexpectedInternalError
at com.github.ambry.frontend.AmbryBlobStorageService.submitResponse(AmbryBlobStorageService.java:385)
at com.github.ambry.frontend.AmbryBlobStorageService$GetCallback.onCompletion(AmbryBlobStorageService.java:901)
at com.github.ambry.frontend.AmbryBlobStorageService$GetCallback.onCompletion(AmbryBlobStorageService.java:814)
at com.github.ambry.router.NonBlockingRouter$1.onCompletion(NonBlockingRouter.java:155)
at com.github.ambry.router.NonBlockingRouter$1.onCompletion(NonBlockingRouter.java:149)
at com.github.ambry.router.NonBlockingRouter.completeOperation(NonBlockingRouter.java:501)
at com.github.ambry.router.NonBlockingRouter.completeOperation(NonBlockingRouter.java:478)
at com.github.ambry.router.GetBlobOperation.abort(GetBlobOperation.java:154)
at com.github.ambry.router.GetManager.removeAndAbort(GetManager.java:282)
at com.github.ambry.router.GetManager.poll(GetManager.java:199)
at com.github.ambry.router.NonBlockingRouter$OperationController.pollForRequests(NonBlockingRouter.java:783)
at com.github.ambry.router.NonBlockingRouter$OperationController.run(NonBlockingRouter.java:840)
at java.lang.Thread.run(Thread.java:748)
Caused by: com.github.ambry.router.RouterException: Get poll encountered unexpected error Error: UnexpectedInternalError
... 4 more
Caused by: java.lang.NullPointerException
at com.github.ambry.router.GetBlobOperation$FirstGetChunk.maybeProcessCallbacks(GetBlobOperation.java:1009)
at com.github.ambry.router.GetBlobOperation$GetChunk.poll(GetBlobOperation.java:580)
at com.github.ambry.router.GetBlobOperation.poll(GetBlobOperation.java:265)
at com.github.ambry.router.GetManager.poll(GetManager.java:194)
... 3 more
2019/01/17 15:42:37.472 ERROR [RouterUtils] [RequestResponseHandlerThread-0] [ambry-frontend] [] Router operation met with a system health error:
com.github.ambry.router.RouterException: Get poll encountered unexpected error Error: UnexpectedInternalError
at com.github.ambry.router.GetManager.poll(GetManager.java:199)
at com.github.ambry.router.NonBlockingRouter$OperationController.pollForRequests(NonBlockingRouter.java:783)
at com.github.ambry.router.NonBlockingRouter$OperationController.run(NonBlockingRouter.java:840)
at java.lang.Thread.run(Thread.java:748)
Caused by: java.lang.NullPointerException
at com.github.ambry.router.GetBlobOperation$FirstGetChunk.maybeProcessCallbacks(GetBlobOperation.java:1009)
at com.github.ambry.router.GetBlobOperation$GetChunk.poll(GetBlobOperation.java:580)
at com.github.ambry.router.GetBlobOperation.poll(GetBlobOperation.java:265)
at com.github.ambry.router.GetManager.poll(GetManager.java:194)
... 3 more
```
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.