Fix streaming bug#405
Conversation
| Supplier<ServerTransport<? extends Closeable>> serverSupplier = | ||
| () -> { | ||
| //return LocalServerTransport.create("test"); | ||
| return TcpServerTransport.create(8001); |
There was a problem hiding this comment.
Can we avoid fixed ports? Can you use TcpClientSetupRule to get your client and server instead?
| } | ||
|
|
||
| @Test(timeout = 2000) | ||
| @Ignore |
There was a problem hiding this comment.
The test should probably be fixed, or should be redone. The TCK pasted so I ignored them for now. I think they fail because of the way they are written and would like to get this fix out.
| () -> { | ||
| sendOneFrame(Frame.Cancel.from(streamId)); | ||
| if (subscribedRequests != null) { | ||
| System.out.println("canceling...."); |
yschimke
left a comment
There was a problem hiding this comment.
Some temporary code still in place. I'll take a look at the code in place in an IDE/debugger to truly follow along. But I won't let that block you landing the fix.
| .send(sendProcessor) | ||
| .doOnError( | ||
| t -> { | ||
| Collection<Subscriber<Payload>> values; |
There was a problem hiding this comment.
I find it hard to follow any sufficiently big chain of rx operators with sizable lambdas. Can we split these up into individual methods without losing anything?
|
What frequency do you want to do releases on for bug fixes? Should I release 0.9.9, 0.9.10 for these types of fixes? |
|
@yschimke I need this one kind of soon, it's blocking what I'm working on. I think 0.9.9 is fine |
|
@robertroeser let me know if you want me to release. But creating the github tag should result in a staged version that we can publish from bintray, so go for it yourself if you want. |
|
@robertroeser nice, release seemed to work. Any problems? |
There is a bug while running requestStream. There is live lock when streaming data under the correct conditions. I separated the incoming frames from out going frames. The request n from receiving prevents duplex connect from sending data out. I added a test in examples project that exercises the issue.