[JSONRPC-48] Weird error when proxy instance is used concurrently from multiple threads Created: 14/Jul/20 Updated: 14/Jul/20 |
|
| Status: | Open |
| Project: | jsonrpc |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Bug | Priority: | Medium |
| Reporter: | Richard Kosegi | Assignee: | Unassigned |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Remaining Estimate: | Not Specified | ||
| Time Spent: | Not Specified | ||
| Original Estimate: | Not Specified | ||
| Description |
|
When proxy instance is used from multiple threads, it is possible to break internal FSM. This should be avoided by some sort of guard that synchronize access to underlying channel.
This is not a blocker, as using same proxy from multiple threads is not supported.
Caused by: java.lang.NullPointerException at org.opendaylight.jsonrpc.bus.messagelib.RequesterSessionImpl.read(RequesterSessionImpl.java:113) at org.opendaylight.jsonrpc.bus.messagelib.RequesterSessionImpl.sendRequestAndReadReply(RequesterSessionImpl.java:146) at org.opendaylight.jsonrpc.bus.messagelib.RequesterSessionImpl.sendRequestAndReadReply(RequesterSessionImpl.java:140) at org.opendaylight.jsonrpc.bus.messagelib.ProxyServiceImpl.invoke(ProxyServiceImpl.java:185)
Caused by: org.opendaylight.jsonrpc.bus.messagelib.MessageLibraryTimeoutException: Message was not received within 30000 milliseconds at org.opendaylight.jsonrpc.bus.messagelib.RequesterSessionImpl.read(RequesterSessionImpl.java:115) at org.opendaylight.jsonrpc.bus.messagelib.RequesterSessionImpl.sendRequestAndReadReply(RequesterSessionImpl.java:146) at org.opendaylight.jsonrpc.bus.messagelib.RequesterSessionImpl.sendRequestAndReadReply(RequesterSessionImpl.java:140) at org.opendaylight.jsonrpc.bus.messagelib.ProxyServiceImpl.invoke(ProxyServiceImpl.java:185)
|