Commit graph

4322 commits

Author SHA1 Message Date
Konrad Malawski
6ecab411b8 Revert "=act,rem #17911 handle IPv6 Addresses better" 2016-01-07 11:03:18 +01:00
Johan Andrén
711c407a8f =act,rem #17911 handle IPv6 Addresses better
* NettyTransport will autowrap IPv6 addresses in brackets if needed
* Address asserts that IPv6 addresses are wrapped in brackets
2016-01-05 21:47:45 +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
Björn Antonsson
36e736582b =act #19216 Fix AbstractNodeQueue value nepotism 2015-12-21 15:57:43 +01:00
Patrik Nordwall
290f402b79 Merge pull request #19211 from akka/wip-19201-max-pools-size-patriknw
=act #19201 improve configuration of thread-pool-executor
2015-12-21 09:50:42 +01:00
Patrik Nordwall
a1c3dbe307 =act #19201 improve configuration of thread-pool-executor
* The old implementation would cap the pool size (both corePoolSize
  and maximumPoolSize) to max-pool-size, which is very confusing
  becuase maximumPoolSize is only used when the task queue is bounded.
* That resulted in configuring core-pool-size-min and core-pool-size-max
  was not enough, because it could be capped by the default max-pool-size.
* The new behavior is simply that maximumPoolSize is adjusted to not be
  less than corePoolSize, but otherwise the config properties match the
  underlying ThreadPoolExecutor implementation.
* Added a convenience fixed-pool-size property.
2015-12-21 09:50:02 +01:00
Roland Kuhn
9972914da0 Merge pull request #19236 from akka/wip-fix-javadoc
=fix missing param in javadoc example
2015-12-20 18:46:04 +01:00
Konrad Malawski
85f6052b2b =fix missing param in javadoc example
Snippet was missing dispatcher, which is needed for `pipe()`
2015-12-18 18:23:05 +01:00
Björn Antonsson
a43d323d3c =act #19216 Fix AbstractNodeQueue nepotism 2015-12-17 15:04:55 +01:00
Konrad Malawski
3185c8fd31 Merge pull request #19088 from ktoso/wip-add-japi-ktoso
+act #19085 adds Java API ByteString#createBuilder
2015-12-04 14:46:42 +01:00
Konrad Malawski
9abb1eaea6 +act #19085 adds Java API ByteString#createBuilder 2015-12-04 13:07:56 +01:00
Patrik Nordwall
ef03818ab1 =act #19016 use the BackoffSupervisor as sender for parent msg 2015-11-27 09:21:28 +01:00
Konrad Malawski
a75a1cdf87 Merge pull request #18981 from andreaTP/setField
=act move lookupAndSetField to Reflect helper.
2015-11-24 12:40:36 +01:00
Patrik Nordwall
bba8495a39 Merge pull request #18998 from jypma/pfbuilder_api_master
PFBuilder matchAny should take declared input type I
2015-11-24 11:44:22 +01:00
Patrik Nordwall
054e292563 Merge pull request #18944 from akka/wip-18487-BackofSupervisor-decider-patriknw
+act #18487 Support custom supervision strategy in BackoffSupervisor
2015-11-24 10:40:19 +01:00
Patrik Nordwall
9507fb926b Merge pull request #18960 from akka/wip-18722-sharding-ddata-init-patriknw
=cls #18722 fix DDataShardCoordinator init
2015-11-24 10:19:01 +01:00
Andrea
42d37be425 =act move lookupAndSetField to Reflect helper. 2015-11-23 15:36:54 +01:00
Jan Ypma
9c1c3f3b2c !act #18996 PFBuilder matchAny should take declared input type I
Currently PFBuilder.matchAny takes a lambda with Object as input argument.
This loses type information for partial functions that are not akka
receive functions, e.g. exception handlers (PF<Exception,RouteResult).
With this change, the fallback handler still has the guaranteed type I
visible on its lambda.
2015-11-23 13:19:40 +01:00
drewhk
2bd88eab5c Merge pull request #18931 from lolski/lolski-issue-18913
moving PrettyDuration and PrettyDurationSpec to akka.util
2015-11-23 12:58:11 +01:00
Andrea
46273ca72f =act removed reference to java.reflect. 2015-11-21 10:29:26 -08:00
lolski
8819535250 +act #18913 moved PrettyDuration to akka-actor 2015-11-21 00:01:51 +08: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
Patrik Nordwall
3f3642337e +act #18487 Support custom supervision strategy in BackoffSupervisor
* and forward messages from child to parent
  (needed for sharding passivation)
2015-11-16 17:46:02 +01:00
Anton Karamanov
0e31184c91 +act #15819 Add PromiseRef and FutureRef as an alternative to ask pattern 2015-11-13 01:25:28 +03:00
Anton Karamanov
254c478ebb +act #15819 Create ask() variant that can be used without sender() 2015-11-13 01:25:28 +03:00
drewhk
fc75eb361a Merge pull request #18754 from akka/wip-18613-optimize-repointable-patriknw
=act #18613 Optimize RepointableActorRef for only sys msg
2015-11-12 10:56:13 +01:00
Patrik Nordwall
7b22aa499d =act #18613 Optimize RepointableActorRef for sys msg
* Before the cell is started the RepointableActorRef queue the messages
  (both system and non-system messages) into a queue. System messages
  are inserted right before the last non-system message by iterating
  the queue, i.e. becomes slow when there are many system messages already
  enqueued.
* This is a problem for pools with many routees.
* The fix is to keep system messages in a separate queue

JMH benchmark before:

    [info] Benchmark                                 (size)  Mode  Cnt       Score      Error  Units
    [info] RouterPoolCreationBenchmark.testCreation    1000    ss  300   13204.048 ± 3081.576  us/op
    [info] RouterPoolCreationBenchmark.testCreation    2000    ss  300   41939.524 ± 6178.087  us/op
    [info] RouterPoolCreationBenchmark.testCreation    3000    ss  300   70752.881 ± 4344.992  us/op
    [info] RouterPoolCreationBenchmark.testCreation    4000    ss  300  120620.885 ± 3296.342  us/op

JMH benchmark after:

    [info] Benchmark                                 (size)  Mode  Cnt      Score      Error  Units
    [info] RouterPoolCreationBenchmark.testCreation    1000    ss  300   7738.721 ± 1806.297  us/op
    [info] RouterPoolCreationBenchmark.testCreation    2000    ss  300  15497.588 ± 4532.852  us/op
    [info] RouterPoolCreationBenchmark.testCreation    3000    ss  300  28704.005 ± 6322.458  us/op
    [info] RouterPoolCreationBenchmark.testCreation    4000    ss  300  37783.516 ± 6778.437  us/op

fully drain sysmsgQueue when swap cell
2015-11-11 15:46:01 +01:00
Johan Andrén
4f267d5931 =doc #18635 Added section about ActorSystem.shutdown being deprecated 2015-11-10 16:46:34 +01:00
Konrad Malawski
581829b9b2 Merge pull request #18755 from akka/wip-16522-optimize-stash-config-patriknw
=act #16522 Optimize Stash creation
2015-11-09 18:06:17 +01:00
Roland Kuhn
f1abaa1c5e Merge pull request #18875 from ktoso/wip-akka.js-cherries-ktoso
Akka.js cherries to master
2015-11-07 18:01:24 +01:00
Andrea
cd3d68a77c =act switch to java std lib ThreadLocalRandom 2015-11-06 14:04:33 +01:00
Andrea
0511b07f3e =act split Props java api implementation in separate files. 2015-11-06 14:04:27 +01:00
Andrea
74ce3bfb1f =act Scheduler implementation separated from interface. 2015-11-06 14:04:11 +01:00
Andrea
3df34bc21d =act split ReflectiveDynamicAccess implementation in separate file. 2015-11-06 14:01:09 +01:00
Andrea
c3f862d724 =act split FSM java api in a separate file. 2015-11-06 13:55:38 +01:00
Patrik Nordwall
1b1ef752fe =act #16522 Optimize Stash creation
* cache the stash capacity config value

BEFORE

    [info] Result "testCustom":
    [info]   27.607 ±(99.9%) 7.924 us/op [Average]
    [info]   (min, avg, max) = (16.928, 27.607, 760217.600), stdev = 1369.808
    [info]   CI (99.9%): [19.682, 35.531] (assumes normal distribution)
    [info]   Samples, N = 323534
    [info]         mean =     27.607 ±(99.9%) 7.924 us/op
    [info]          min =     16.928 us/op
    [info]   p( 0.0000) =     16.928 us/op
    [info]   p(50.0000) =     21.824 us/op
    [info]   p(90.0000) =     31.680 us/op
    [info]   p(95.0000) =     38.592 us/op
    [info]   p(99.0000) =     57.920 us/op
    [info]   p(99.9000) =    102.144 us/op
    [info]   p(99.9900) =    371.471 us/op
    [info]   p(99.9990) =  85461.364 us/op
    [info]   p(99.9999) = 760217.600 us/op
    [info]          max = 760217.600 us/op

    [info] Result "testDefault":
    [info]   26.465 ±(99.9%) 15.980 us/op [Average]
    [info]   (min, avg, max) = (14.608, 26.465, 1461714.944), stdev = 2900.094
    [info]   CI (99.9%): [10.485, 42.444] (assumes normal distribution)
    [info]   Samples, N = 356626
    [info]         mean =     26.465 ±(99.9%) 15.980 us/op
    [info]          min =     14.608 us/op
    [info]   p( 0.0000) =     14.608 us/op
    [info]   p(50.0000) =     18.304 us/op
    [info]   p(90.0000) =     22.816 us/op
    [info]   p(95.0000) =     26.976 us/op
    [info]   p(99.0000) =     41.647 us/op
    [info]   p(99.9000) =     71.808 us/op
    [info]   p(99.9900) =    139.696 us/op
    [info]   p(99.9990) =  33048.112 us/op
    [info]   p(99.9999) = 1461714.944 us/op
    [info]          max = 1461714.944 us/op

    [info] Benchmark                             Mode     Cnt   Score    Error  Units
    [info] StashCreationBenchmark.testCustom   sample  323534  27.607 ±  7.924  us/op
    [info] StashCreationBenchmark.testDefault  sample  356626  26.465 ± 15.980  us/op

AFTER:

    [info] Result "testCustom":
    [info]   22.710 ±(99.9%) 1.384 us/op [Average]
    [info]   (min, avg, max) = (15.168, 22.710, 110886.912), stdev = 233.744
    [info]   CI (99.9%): [21.326, 24.094] (assumes normal distribution)
    [info]   Samples, N = 308896
    [info]         mean =     22.710 ±(99.9%) 1.384 us/op
    [info]          min =     15.168 us/op
    [info]   p( 0.0000) =     15.168 us/op
    [info]   p(50.0000) =     19.776 us/op
    [info]   p(90.0000) =     28.608 us/op
    [info]   p(95.0000) =     33.344 us/op
    [info]   p(99.0000) =     49.216 us/op
    [info]   p(99.9000) =     90.253 us/op
    [info]   p(99.9900) =    594.334 us/op
    [info]   p(99.9990) =   8350.329 us/op
    [info]   p(99.9999) = 110886.912 us/op
    [info]          max = 110886.912 us/op

    [info] Result "testDefault":
    [info]   19.099 ±(99.9%) 0.424 us/op [Average]
    [info]   (min, avg, max) = (13.120, 19.099, 45940.736), stdev = 77.524
    [info]   CI (99.9%): [18.675, 19.523] (assumes normal distribution)
    [info]   Samples, N = 361741
    [info]         mean =     19.099 ±(99.9%) 0.424 us/op
    [info]          min =     13.120 us/op
    [info]   p( 0.0000) =     13.120 us/op
    [info]   p(50.0000) =     16.368 us/op
    [info]   p(90.0000) =     24.250 us/op
    [info]   p(95.0000) =     31.232 us/op
    [info]   p(99.0000) =     55.680 us/op
    [info]   p(99.9000) =    121.249 us/op
    [info]   p(99.9900) =    402.386 us/op
    [info]   p(99.9990) =   1767.264 us/op
    [info]   p(99.9999) =  45940.736 us/op
    [info]          max =  45940.736 us/op
    [info]
    [info]
    [info] # Run complete. Total time: 00:02:01
    [info]
    [info] Benchmark                             Mode     Cnt   Score   Error  Units
    [info] StashCreationBenchmark.testCustom   sample  308896  22.710 ± 1.384  us/op
    [info] StashCreationBenchmark.testDefault  sample  361741  19.099 ± 0.424  us/op
2015-11-06 13:34:29 +01:00
Henry Mai
a0e9b01aa4 Add TransparentExponentialBackoffSupervisor 2015-11-01 22:25:05 -08:00
Patrik Nordwall
ac82354077 Merge pull request #18552 from johanandren/wip-18371-warn-about-java-serialization-johanandren
=act #18371 Warn if the default Java serializer is used
2015-10-26 08:34:11 +01:00
Patrik Nordwall
97fc493446 Merge pull request #18357 from kailuowang/metrics-based-resizer
+act #18356 Metrics based resizer for router
2015-10-23 12:38:14 +02:00
Martynas Mickevičius
4ffe267835 =pro verify BC against all binary compatible versions 2015-10-23 09:10:25 +03:00
Kailuo Wang
90cba9ce0d +act #18356 Metrics based resizer for router 2015-10-22 11:14:00 -04:00
Johan Andrén
146bb89e23 =act #18371 Warn if the default Java serializer is used
Unless the message is in akka.* or the configuration setting 'akka.actor.warn-about-java-serializer-usage'
is disabled a warning is logged for each class that the Java serializer is choosen for.
2015-10-21 10:10:24 +02:00
Patrik Nordwall
233ea96690 cleanup some test configuration 2015-10-05 10:29:09 +02:00
Roland Kuhn
1830b729bb =act correct two comments in AbstractNodeQueue.java 2015-10-01 11:14:54 +02:00
Johan Andrén
717e2191a1 =act #15159 Better error when maibox does not fulfill requirements 2015-09-21 15:40:24 +02:00
Patrik Nordwall
0cdd9af3c4 +per #18485 Add cluster sharding data removal utility 2015-09-17 14:07:08 +02:00
Patrik Nordwall
f897997e36 Merge pull request #18457 from dodnert/docfix-17640-dodnert
Correcting and improving documentation of TailChoppingRoutingLogic, T…
2015-09-17 11:49:16 +02:00
Daryl Odnert
57d0cbaee5 =act #17640 Improving documentation for TailChoppingRoutingLogic, TailChoppingPool, and TailChoppingGroup 2015-09-16 10:30:10 -07:00
Konrad Malawski
07d9cda3a6 Merge pull request #18446 from akka/wip-18346-doc-scheduler-patriknw
=act #18346 Document scheduler task throws
2015-09-16 12:21:50 +02:00
Patrik Nordwall
876b8045a1 =act #17425 Document NonBlockingBoundedMailbox to be single-consumer 2015-09-11 16:44:24 +02:00