You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository has been archived by the owner on Dec 5, 2024. It is now read-only.
I was trying to upgrade ethereumj to Netty 4.1 and found the following issue which I think is also a bug with the current version.
There is a DefaultPromise being constructed without an executor, sidestepping the actual intention of this class in Netty: public synchronized Future<Chunk> getAsync(Key key) { Chunk chunk = localStore.get(key); Promise<Chunk> ret = new DefaultPromise<Chunk>() {};
Using the DefaultPromise this way only works because of a lucky combination of checks in Netty.
Due to another check in DefaultPromise.notifyListeners this issue only ever causes problems if a listener has been registered. This lucky combo is gone in Netty 4.1.
To see what I mean run BzzProtocolTest.simpleTest in the current version. The test will work.
Now update to Netty to 4.1.13 and run again and you will see the NPE.
I currently have no good idea what the correct executor might be in this situation.
The text was updated successfully, but these errors were encountered:
I was trying to upgrade ethereumj to Netty 4.1 and found the following issue which I think is also a bug with the current version.
There is a DefaultPromise being constructed without an executor, sidestepping the actual intention of this class in Netty:
public synchronized Future<Chunk> getAsync(Key key) { Chunk chunk = localStore.get(key); Promise<Chunk> ret = new DefaultPromise<Chunk>() {};
Using the DefaultPromise this way only works because of a lucky combination of checks in Netty.
Due to another check in DefaultPromise.notifyListeners this issue only ever causes problems if a listener has been registered. This lucky combo is gone in Netty 4.1.
To see what I mean run BzzProtocolTest.simpleTest in the current version. The test will work.
Now update to Netty to 4.1.13 and run again and you will see the NPE.
I currently have no good idea what the correct executor might be in this situation.
The text was updated successfully, but these errors were encountered: