Commit graph

271 commits

Author SHA1 Message Date
Bernard Leach
2420b96bc6 =htc make HttpMessageParser use GraphStage #19225 (#20385) 2016-05-06 11:24:42 +02:00
2beaucoup
bc7cd17bee =htc Various minor cleanups (#20451)
* minor fixes

* remove now superfluous buffer from MultipartUnmarshaller

* remove unused TokenSourceActor

* remove FIXME: add tests, see #16437

* removed unused param remoteAddress (comment: TODO: remove after #16168 is cleared)

* convert FIXME to TODO (#18709)

* reenable tests in {Request|Response}RendererSpec due to fixed #15981

* remove logging workaround in StreamTestDefaultMailbox due to fixed #15947
2016-05-06 10:32:06 +02:00
Konrad Malawski
d24c1e0ede =sha #20315 make sharding snapshotting based on seqNr, not counter (#20319) 2016-05-05 16:21:24 +02:00
Robert Budźko
fbe383722c htc #20362 Expire defaults when HTTP-date is not possible to parse (#20362)
* Expire defaults when HTTP-date is not possible to parse (#20362) and  'If-Modified-Since' is more strict (excluding 0 - rfc 7232 3.3).

* Fixed reversed missing method MiMa problem (#20131) and 'expires' instead of 'expire' wording.

* HTTP-date should match '0' as DateTime.MinValue after all.
2016-04-28 23:34:10 +02:00
Martynas Mickevicius
540e17dfc6 Add latest versions to MiMa 2016-04-26 15:28:41 +02:00
Konrad Malawski
0e11ec2057 !htc #20371 allows for simple HTTPS usage from Java, fixes typo in APIs (#20373) 2016-04-25 12:01:03 +02:00
Michał Kiędyś
b983f19c1f Add basic support for Java 7 NIO file systems (#20293) 2016-04-25 11:25:26 +02:00
Giovanni Caporaletti
54f73f9329 support HttpEntity.with/withoutSizeLimit in scaladsl HttpEntity, #20342
also add a missing test for withSizeLimit
2016-04-20 15:33:12 +02:00
David Knapp
d7fe98e1c4 #20123 Added recoverWithRetries which adds a parameter to limit the (#20137)
number of attempts. Existing recoverWith method behavior remains unchanged.
2016-04-20 15:24:12 +02:00
Konrad Malawski
6e1b32e6ea htp #20214 more docs on https context configuring 2016-04-09 02:30:28 +02:00
Samuel Tardieu
81579bd403 =htc #20080,#20081,#20082 Simplify pool gateway synch
* Rewrite the pool gateway synchronization

Rewrite the pool gateway synchronization so that:
- The documented race condition in PoolInterfaceActor is gone. No
  PoolInterfaceActor will receive new requests after the gateway
  shutdown has been initiated (fix #20081).
- A gateway created using newHostConnectionPool will no longer
  share its pool with others even when it has been shutdown
  due to idle-timeout and recreated. Also, its original
  materializer will be used to create all the successive
  pools incarnations (fix #20080).
- Collapsing chains of gateways do no longer need to be created.
  The gateways are now only an entrypoint to the pool master
  actor, and this actor is in charge of keeping a cache of
  currently active pools and recreate them from the information
  given by the gateway when needed.

* Add copyright header

* Mark PoolMasterActor as INTERNAL API

* Larger outer timeout

* Define Props in PoolMasterActor object

* Comment INTERNAL API

* Remove unused import
2016-04-08 15:26:42 +02:00
Evgeny Vanslov
f42ab58b05 Replaced PushStage based TakeWhile with GraphStage #19834 2016-04-01 11:34:30 +03:00
Tal Pressman
26c25c89ed +str #19390 Add 'monitor' flow combinator and stage 2016-04-01 08:06:37 +02:00
Alexander Golubev
bcd52fb90a =str #19834 Replave UTF8Encoder with GraphStage 2016-03-31 11:07:12 -04:00
drewhk
cc5adc632c Merge pull request #19895 from drewhk/wip-19892-killswitch-drewhk
#19892: KillSwitch (externally controllable stream completion)
2016-03-31 12:10:58 +02:00
drewhk
982243b49a Merge pull request #19913 from vans239/19910-checkContentLength
Replaced PushStage based CheckContentLength with GraphStage #19834
2016-03-31 11:55:08 +02:00
Endre Sándor Varga
2cb4d42087 19892: KillSwitch (controllable stream completion) 2016-03-31 10:51:59 +02:00
Johan Andrén
cb91c60266 Merge pull request #19990 from agolubev/19834-replace-collect-with-GraphStage
19834 replace collect with graph stage
2016-03-29 18:46:52 +02:00
Evgeny Vanslov
45a2440970 Replaced PushStage based CheckContentLength with GraphStage #19834 2016-03-28 23:50:08 +03:00
Roland Kuhn
8a3cf8145b lift mapMaterializedValue to FlowOpsMat 2016-03-24 12:51:39 +01:00
Alexander Golubev
951afec88e =str 19834 Migrating PushStages to GraphStage
Collect, DropWhile, LimitWeighted
2016-03-22 10:44:27 -04:00
Samuel Tardieu
0b4acce4d7 =str Simplify cancellation of TickSource
Fix #20028
2016-03-21 19:10:17 +01:00
Konrad Malawski
22dead97c9 Merge pull request #20011 from ktoso/wip-deprecate-dangerous-static-fields-ktoso
+htc #19162 unholy fix for javadsl initialization issues
2016-03-21 17:58:50 +01:00
Konrad Malawski
e0bac41822 +htc #19162 add init workaround when scala inits first (and then java) 2016-03-21 17:20:04 +01:00
Konrad Malawski
30e43d05aa Merge pull request #19908 from trautonen/take-as-graphstage-trautonen
Replaced PushStage based Take with GraphStage #19834
2016-03-21 15:44:13 +01:00
Tapio Rautonen
1bcc1310d2 Replaced PushStage based Take with GraphStage #19834
Changes suggested by @viktorklang

Added take to binary compatibility exclude

Cleanup
2016-03-18 21:35:05 +02:00
qian miao
aa8742738c =per #19828 pop the internal stash when the writing was finished in the processing commands state 2016-03-18 12:27:02 +08:00
Roland Kuhn
af310411fd add Source.queue termination support, fixes #19877 2016-03-17 12:47:06 +01:00
Roland Kuhn
7cf99134dc catch ActorCell creation failures for top-level actors #15947
Previously a failure during e.g. MailboxType.create() would make the
user guardian fail, tearing down the whole system as a result. The cause
is a deep bug in handling ActorCell creation that we cannot really fix
anymore due to resulting changes in semantics, hence this fix only
targets top-level actors (where the observable difference is an
unambiguous improvement).

fixes #15947
2016-03-17 11:04:52 +01:00
Roland Kuhn
9125ca2663 Merge pull request #20016 from akka/wip-fix-matVal-graph-RK
simplify materialized value computation tree, fixes #20015
2016-03-17 10:49:18 +01:00
Konrad Malawski
c69efe4dd8 !htc WIP #19956 removing case classes from HttpMessages 2016-03-17 09:29:59 +01:00
Roland Kuhn
b255a19374 simplify materialized value computation tree, fixes #20015
- also fixes materialized value sources for graphs that import zero or
  one graphs, with and without Fusing
2016-03-16 17:05:46 +01:00
Johan Andrén
8a9b3a48d9 =str #20009 State shared over multiple materializations eliminated 2016-03-15 15:05:01 +01:00
Konrad Malawski
a253014ef4 =htp #19397,#19842 fix content negotiation for non 2xx and Accept handling 2016-03-15 09:40:58 +01:00
Alexander Golubev
b2b2ce44b5 =str #19299 Performance Flow.flatMapMerge 2016-03-14 14:14:39 -04:00
Johan Andrén
78e47de6a3 =htt #20013 Provide a description as stream size exception message 2016-03-14 14:16:17 +01:00
Martynas Mickevičius
50f99328fe #18765 Update to latest MiMa which is now an AutoPlugin.
* check for binary inc. issues by default
* if check is not needed, disable MimaPlugin
* determine old artifact id from the current one
2016-03-10 10:45:35 +02:00
Johan Andrén
62e30b3c08 Update copyrights and links to the new company name #19851 2016-02-23 12:58:39 +01:00
Roland Kuhn
bf17de3128 #19637 fix BC issue in AsyncWriteJournal 2016-01-29 12:38:32 +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
Roland Kuhn
4c72495581 #19440 replace Scala Future usage with CompletionStage in javadsl
This entails:

  * adding akka.pattern.PatternCS.* to enable ask etc. with
    CompletionStage
  * changing RequestContext to offer an ExecutionContextExecutor for the
    CompletionStage.*Async combinators
  * splitting up akka.stream.Queue for JavaDSL consistency
2016-01-23 18:00:11 +01:00
Martynas Mickevičius
fcb2160578 #19432 enable MiMa check for osgi and cluster-metrics projects
Also start checking against 2.4.1 and move appropriate filters for 2.4.1.
2016-01-21 17:19:39 +02:00
Roland Kuhn
ea34103f98 #19014 add FunctionRef and use in GraphStage.StageActor
This new light-weight ActorRef supports running a non-blocking
side-effect upon message send, which is used to dispatch an async
callback to a GraphStageLogic, or it can be used to make the Akka Typed
adapters more efficient. The FunctionRef is registered with its parent,
and it is not user-level API (hence only accessible by downcasting the
ActorContext).
2016-01-19 08:32:38 +01:00
Raymond Roestenburg
2404a9da01 #19246 Auto and manual reset and BackoffOptions.
Also moved `TransparantExponentialBackoffSupervisor` to `akka.pattern` (renamed to `BackoffOnRestartSupervisor`)
2015-12-29 21:23:16 +02:00
Eugene Dzhurinsky
fb763040f2 Add named exception to detect when a cluster node has been quarantined by others #18758
Publish appropriate events to the current ActorSystem event stream upon remote ActorSystem shutdown or when current ActorSystem is quarantined by the remote ActorSystem.
2015-12-20 13:02:19 -05:00
Patrik Nordwall
0af98e7bee =per add detailed debug logging in ReplayFilter 2015-12-16 14:43:39 +01:00
Patrik Nordwall
b6b498bd2c =rem #19133 avoid DeathPactException race condition
* DeathPactException could occur if the ReliableDeliverySupervisor
  was gated but not yet received Terminated and got an Ungate message
  from the EndpointManager and thereby entered idle state, followed by
  receiving the Terminated message, which is not handled in idle
2015-12-16 14:20:30 +01:00
Tal Pressman
f610952ae7 PersistencePluginProxy
* Rename to PersistencePluginProxy.
* Watch target journal.
* Create PersistencePluginProxyExtension to enable eager initialization of
  the persistence plugin.
* Add initialization via configuration.
* Add tests and documentation.
* Clearer log messages.
2015-12-01 17:12:33 +02:00
Patrik Nordwall
c11b600cc1 !cdd #18328 optimize VersionVector for size 1 (typical dots)
AFTER:

[info] Benchmark                                  (set1Size)   Mode  Cnt     Score     Error   Units
[info] ORSetMergeBenchmark.mergeAddFromBothNodes           1  thrpt   10  2007.939 ±  74.673  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromBothNodes          10  thrpt   10   337.110 ±  15.055  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromBothNodes          20  thrpt   10   223.600 ±   8.403  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromBothNodes         100  thrpt   10    46.697 ±   2.136  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode           1  thrpt   10  2542.537 ± 120.697  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode          10  thrpt   10   365.694 ±  17.571  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode          20  thrpt   10   216.323 ±   9.446  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode         100  thrpt   10    49.563 ±   2.725  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode            1  thrpt   10  9883.186 ± 725.672  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode           10  thrpt   10  3266.528 ± 189.993  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode           20  thrpt   10  3206.017 ± 124.623  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode          100  thrpt   10  2709.031 ± 162.182  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                    1  thrpt   10   572.704 ±  21.504  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                   10  thrpt   10   249.226 ±  12.324  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                   20  thrpt   10   170.560 ±  10.320  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                  100  thrpt   10    46.373 ±   1.800  ops/ms

BEFORE:

[info] Benchmark                                  (set1Size)   Mode  Cnt     Score     Error   Units
[info] ORSetMergeBenchmark.mergeAddFromBothNodes           1  thrpt   10   885.664 ±  99.718  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromBothNodes          10  thrpt   10   304.617 ±   4.755  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromBothNodes          20  thrpt   10   200.977 ±   3.708  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromBothNodes         100  thrpt   10    47.879 ±   4.352  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode           1  thrpt   10  1586.848 ±  27.476  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode          10  thrpt   10   354.408 ±   4.772  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode          20  thrpt   10   210.563 ±  32.914  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromOtherNode         100  thrpt   10    52.750 ±   0.698  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode            1  thrpt   10  3915.817 ± 420.643  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode           10  thrpt   10  2369.476 ± 250.336  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode           20  thrpt   10  2378.924 ±  47.160  ops/ms
[info] ORSetMergeBenchmark.mergeAddFromSameNode          100  thrpt   10  2167.841 ±  20.339  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                    1  thrpt   10   387.261 ±   8.820  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                   10  thrpt   10   212.661 ±   4.802  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                   20  thrpt   10   151.512 ±   2.627  ops/ms
[info] ORSetMergeBenchmark.mergeComplex                  100  thrpt   10    40.976 ±   2.014  ops/ms

* use subtype polymorphism for VersionVector

tmp
2015-11-25 09:17:12 +01:00
Patrik Nordwall
27995af79f =cls #18722 fix DDataShardCoordinator init
* the become logic was wrong when watchStateActors triggers an immediate
  state update
2015-11-18 16:13:58 +01:00