Commit graph

32 commits

Author SHA1 Message Date
Roland Kuhn
7b7647435b ensure that graph attributes are not lost
- this entails making Module.isSealed==true if attributes are set
- also removed Module.nest(), which implied fixing replaceShape to form
  a CompositeModule where CopiedModule was used before (GraphModule and
  TlsModule)
2016-02-12 10:07:55 +01:00
Prayag Verma
b7783968a0 =pro #19068 All copyrights ranges and single years updated to a range ending in 2016 2016-01-25 10:20:30 +01:00
Endre Sándor Varga
60497f6561 also fix FlowInterleaveSpec
Also-by: Johan Andrén <johan@markatta.com>
Also-by: Roland Kuhn <rk@rkuhn.info>
Also-by: Martynas Mickevičius <mmartynas@gmail.com>
2016-01-20 10:01:58 +02:00
Roland Kuhn
e4f31b66c3 make fused graphs fusable 2015-12-15 22:02:34 +01:00
Roland Kuhn
a20bbce433 add fusing 2015-12-15 09:24:52 +01:00
Viktor Klang
f839a1f85d !str - 18808 - Removes Sink.fanoutPublisher and makes Sink.publisher specify number of subscribers
Sink.publisher now takes a max number of Subscribers and
the elasticity between concurrent Subscribers.
2015-11-04 12:29:07 +01:00
Martynas Mickevičius
ee5ec72552 =str #15707 name unnamed modules
* give name attribute to TickSource and nested modules
* reflow module toString output
* give toString to flow
2015-11-04 13:01:05 +02:00
Roland Kuhn
556012b7ee !str,htc replace and remove OneBoundedInterpreter
main work by @drewhk with contributions from @2m and @rkuhn

This work uncovered many well-hidden bugs in existing Stages, in
particular StatefulStage. These were hidden by the behavior of
OneBoundedInterpreter that normally behaves more orderly than it
guarantees in general, especially with respect to the timeliness of
delivery of upstream termination signals; the bugs were then that
internal state was not flushed when onComplete arrived “too early”.
2015-11-01 14:53:52 +01:00
drewhk
a4db27f6ed Revert "+str #18486 Source.subscriber's Subscriber throws if subscribed more than once" 2015-10-07 16:50:44 +02:00
Alexander Golubev
74dc99a656 +str #18486 Make sure that Source.subscriber's Subscriber throws if subscribed more than once 2015-09-24 22:25:06 -04:00
Alexander Golubev
5f2e50e416 +str #18486 Make sure that Source.subscriber's Subscriber throws if subscribed more than once 2015-09-21 09:50:15 -04:00
Alexander Golubev
99df500ff2 +str #18486 Make sure that Source.subscriber's Subscriber throws if subscribed more than once 2015-09-20 22:38:50 -04:00
André Rüdiger
6af9ced35c =str: various minor cleanups 2015-08-18 11:36:24 +02:00
egisj
5d0a4a6062 =str fix typo in error message 2015-07-29 23:01:26 +01:00
Viktor Klang
66a116d3d2 -str - Improvements and renames in internal streams classes
* Renames Module.grow -> Module.compose
 * Renames Module.connect -> Module.wire
 * Renames Module.growConnect -> Module.fuse
 * Renames Module.wrap -> Module.nest

 * Adds explicit identity equals and hashCode to InPort and OutPort

 * Reimplements many of the Source factories to avoid copying

 * Documents Module.compose, Module.fuse, Module.wire and Module.nest

 * Removes Attributes.nameLifted

 * Optimizes Attributes.nameOrDefault
2015-07-13 23:39:45 +02:00
Viktor Klang
2725bfc044 =str - Various internal Akka Stream improvements
* Gives Inlets and Outlets a `carbonCopy` method and switches to allocate them via `apply`
* Removes 4 Array allocations per FanIn and uses a bitmasked array instead
* Makes the FlattenStrategy.concat instance a singleton
2015-06-30 11:45:50 +02:00
Viktor Klang
36abbb4234 Introduces fold as a Flow transformation and generalizes Sink.fold to be Flow.fold + Sink.head
Conflicts:
	akka-stream/src/main/scala/akka/stream/impl/ActorMaterializerImpl.scala
	akka-stream/src/main/scala/akka/stream/impl/Stages.scala
	akka-stream/src/main/scala/akka/stream/scaladsl/Sink.scala
2015-06-30 10:17:52 +02:00
Endre Sándor Varga
dc7269e620 Rename OperationAttributes to Attributes 2015-06-23 18:45:04 +02:00
Endre Sándor Varga
21d45ea1b8 - Fix accidentally passing ClientServerSpec tests
- Making materializer more robust against exceptions
2015-06-23 11:10:21 +02:00
Roland Kuhn
6e72271eb5 =str add VirtualProcessor
- create a fully RS compliant minimal identity processor (that is not an
  Actor)
- replace SubscriberSourceVirtualProcessor,
  PublisherSinkVirtualSubscriber and PublisherSinkVirtualPublisher with
  this
- add tests that transform Sink.publisher’s and Source.subscriber’s
  materialized value
- also remove the Keep.{left, right} optimization in order to make
  side-effecting mat value transforms execute even if their values are
  discarded
2015-06-18 22:24:14 +02:00
Endre Sándor Varga
74843eccaf =str #16923: Inject identity between SubscriberSource and PublisherSink 2015-06-15 14:40:09 +02:00
Endre Sándor Varga
605bbbce86 =str #17377: Turn off debug validation 2015-05-07 15:20:25 +02:00
Mathias
15b95ab0e5 =str fix typo in internal type (RejectAdditionalSubscribers) 2015-04-23 22:37:34 +02:00
Endre Sándor Varga
82a7f13a02 =str 16940: Implement shallow copy of layouts 2015-04-23 18:00:01 +02:00
Patrik Nordwall
2a975bfb35 =str #16986 Fix memory leak in PrefixAndTail when using Sink.publisher
The problem was reproduced with the TCK PrefixAndTailTest
required_spec313_cancelMustMakeThePublisherEventuallyDropAllReferencesToTheSubscriber
The tck subscriber was still referenced. Profiling revealed that the
root cause was the VirtualPublisher that holds a reference to the
realPublisher, which was MultiStreamOutputProcessor$SubstreamOutput,
which had the reference to the subscriber. The VirtualPublisher
is created by the Sink.publisher in the test, and the test holds
on to that VirtualPublisher reference.

The solution is to null out realPublisher field in the VirtualPublisher.

The old workaround with the NullSubscriber was removed.

Also made Sink.publisher reject additional subscribers.
2015-04-21 16:11:23 +02:00
Patrik Nordwall
00033313e0 !str #16951 Unify scaladsl and javadsl OperationAttributes
* Move actor specific attributes to ActorOperationAttributes
2015-04-16 14:16:01 +02:00
Martynas Mickevičius
da5fde03c7 Merge pull request #17142 from 2m/wip-minor-typo-fixes
=str minor typo fixes and scala version bump
2015-04-14 16:53:39 +03:00
Martynas Mickevičius
57e5976996 =str minor typo fixes and scala version bump 2015-04-13 20:10:59 +03:00
Endre Sándor Varga
a7af773e2c !str #16168: Expose materialized value in the graph as a "source" 2015-04-07 12:51:18 +02:00
Roland Kuhn
157629f8af !str #16416,#16994 BidiFlow DSL and Flow.join Mat
- add BidiFlow, with atop and join combinators
- add Flow.join(BidiFlow)
- correct Flow.join’s default materialized value selection to Keep.left
2015-03-24 11:10:14 +01:00
Roland Kuhn
aeb31d2a1f fix a good swath of FIXMEs 2015-02-26 12:07:02 +01:00
Endre Sándor Varga
8d77fa8b29 !str #16902: Unify stream internal representation
also =str #16912: Fix StreamTcpSpec flakiness
2015-02-26 10:06:56 +01:00