Commit graph

461 commits

Author SHA1 Message Date
Patrik Nordwall
84ade6fdc3 add CoordinatedShutdown, #21537
* CoordinatedShutdown that can run tasks for configured phases in order (DAG)
* coordinate handover/shutdown of singleton with cluster exiting/shutdown
* phase config obj with depends-on list
* integrate graceful leaving of sharding in coordinated shutdown
* add timeout and recover
* add some missing artery ports to tests
* leave via CoordinatedShutdown.run
* optionally exit-jvm in last phase
* run via jvm shutdown hook
* send ExitingConfirmed to leader before shutdown of Exiting
  to not have to wait for failure detector to mark it as
  unreachable before removing
* the unreachable signal is still kept as a safe guard if
  message is lost or leader dies
* PhaseClusterExiting vs MemberExited in ClusterSingletonManager
* terminate ActorSystem when cluster shutdown (via Down)
* add more predefined and custom phases
* reference documentation
* migration guide
* problem when the leader order was sys2, sys1, sys3,
  then sys3 could not perform it's duties and move Leving sys1 to
  Exiting because it was observing sys1 as unreachable
* exclude Leaving with exitingConfirmed from convergence condidtion
2017-01-16 09:01:57 +01:00
Jeroen Gordijn
8499ff6faf #22035 Make it possible to use anything as the key in a map
- All Map types are now generic in their key: ORMap, ORMultiMap, LWWMap,
  PNCounterMap
- test for binary compatibility with previous version for serialization
- entries are sorted for deterministic SHA-1 on same value
2017-01-11 21:20:39 +01:00
Philippus Baalman
6c7085252a extended copyright into 2017 2017-01-04 17:37:15 +01:00
Konrad `ktoso` Malawski
067b569f85 Merge branch 'master' into wip-query-2.5 2017-01-03 17:04:48 +01:00
Konrad Malawski
b036b555e4 =peq remove bridge from old APIs in PersistenceQuery 2016-12-15 13:00:26 +01:00
Konrad Malawski
2ab8ab2840 =21423 remove deprecated PersistentView 2016-12-15 12:31:20 +01:00
Konrad Malawski
abaa8f394e =peq #21724 #19174 unify naming of query methods 2016-12-14 14:07:56 +01:00
Richard Imaoka
3df22baf3a Fix incorrect materialized types = Unit in stream documentation (#21938)
* Fix incorrect materialized types = Unit in stream documentation (Fixes #21937)

*  Correct Int, which should be Integer in Java

* Replace BoxedUnit in stream doc
2016-12-06 15:52:54 +01:00
Patrik Nordwall
e04444567f Speedup pull request validation
* speedup ActorCreationPerfSpec
* reduce iterations in ConsistencySpec
* tag SupervisorHierarchySpec as LongRunningTest
* various small speedups and tagging in actor-tests
* speedup expectNoMsg in stream-tests
* tag FramingSpec, and reduce iterations
* speedup QueueSourceSpec
* tag some stream-tests
* reduce iterations in persistence.PerformanceSpec
* reduce iterations in some cluster perf tests
* tag RemoteWatcherSpec
* tag InterpreterStressSpec
* remove LongRunning from ClusterConsistentHashingRouterSpec
* sys property to disable multi-jvm tests in test
* actually disable multi-node tests in validatePullRequest
* doc sbt flags in CONTRIBUTING
2016-11-30 14:31:06 +01:00
Patrik Nordwall
ea84b4bfdd add LoadSnapshotFailed in snapshot protocol, #21842
* treat snapshot load failure in same way as other recovery failures
* if load of snapshot fails the persistent actor will be stopped, since
  we can't assume that a consistent state would be recovered just by
  replaying all events, since events may have been  deleted
* additional recovery docs
* improve log message
2016-11-18 10:51:35 +01:00
Olli Helenius
658b46e1cc Move (de)compression helpers to akka-stream module #21395 (#21409)
* Move (de)compression helpers to akka-stream #21395

* Move compression and decompression -related classes from
  akka-http-experimental to akka-stream
* Add Compression helper object with functions to create
  decompressing Flows
* Add a short cookbook entry

* =str move compression impl classes into their own directory (and change visibility)

* =str also expose gzip/deflate compression flows

* Fix formatting of plural ByteStrings in cookbook

* =str #21395 make compressor call Deflater.end in postStop to release resources

Also simplified the creation of the flow given a compressor.

* =str #21395 decompressors call Inflater.end in postStop to release resources

* =str #21395 smallish Scaladoc fixes
2016-11-17 22:42:37 +01:00
Patrik Nordwall
4dd969c0ae remove template pattern in howto docs (#21808) 2016-11-09 20:13:19 +01:00
Patrik Nordwall
4f013a3d1e avoid infinite blocking in TcpConnectionSpec #21375
* use socket timeout
* additional cleanup of socket utils
2016-11-09 17:36:04 +01:00
Konrad Malawski
0127d4f424 +str #18793 StageLogging that allows logger access in stages (#21696)
* +str #18793 StageLogging that allows logger access in stages
Also, non ActorMaterializers can opt-into providing a logger here.

* +str #18794 add javadsl for StageLogging

* fix missing test method on compile only class
2016-10-28 16:05:56 +02:00
Johan Andrén
33ece118a8 New EventEnvelope including Offset rather than Long #21722 2016-10-27 15:32:10 +02:00
Patrik Nordwall
aa8c253d14 improve streams actor integration docs, #21698 (#21700)
* mapAsync + ask should be the first choice
* add missing Source.queue
* prefer actorRefWithAck
* move ActorPublisher and ActorSubscriber to the end
  with additional warning
* fix wrong doc of SourceQueue offer
* and add missing java api
2016-10-26 10:24:51 +02:00
Konrad Malawski
a6a5556a8f Remove Akka-HTTP sources from akka/akka, moving to akka/akka-http! (#21690) 2016-10-18 15:17:17 +02:00
Richard Imaoka
375c032604 eventsByTag and currentEventsByTag to use Offset (#21615)
* EventsByTagQuery2 and CurrentEventsByTagQuery2 to keep binary compatibility
2016-10-17 16:45:27 +02:00
Martynas Mickevičius
1e85e1720c #17717 handle OnComplete in ActorSubscriber doc samples 2016-10-17 11:07:40 +02:00
Patrik Nordwall
7af814d3df java docs for Artery, #21209
* and a few other things
* fixed some remaining akka.tcp
2016-09-30 19:11:21 +02:00
Konrad Malawski
e7ed0a2e6b +doc document ByteBufferSerializer for Artery #21601 2016-09-30 16:16:49 +02:00
Roland Kuhn
bf928af092 remove Props in akka-typed
The deployment configuration is realized as an internally linked list,
which makes it allocation-free in the common case but retains full
extensibility.
2016-09-30 07:47:50 +02:00
Patrik Nordwall
e8ce261faf Merge branch 'master' into wip-sync-2.4.10-patriknw 2016-09-09 14:12:16 +02:00
Jan Ypma
09f2d83e69 +tes #21198 Allow TestActor/TestKit/TestProbe to create child actors
This is useful in at least two scenarios:
- Unit testing actors that communicate to their parent directly
- Testing re-creating (typically persistent) actors with the same name
2016-09-01 11:38:07 +02:00
drewhk
4821fb158e #20904: Increase timeouts in TestKitDoc tests, use Sink.seq (#21260) 2016-08-31 17:20:05 +01:00
Patrik Nordwall
90cce8579a Merge branch 'master' into wip-sync-artery-dev-patriknw 2016-08-31 08:59:49 +02:00
gosubpl
7d7a5e51da added test showing that timeout is correctly reset for both infinite as well as finite initial request-timeout (#20817) 2016-08-30 22:18:26 +02:00
gosubpl
fcc1d12879 fix for infinite timeout disabling timeout infrastructure (#20817) 2016-08-25 23:32:14 +02:00
drewhk
67d0d2a4e3 Merge pull request #21183 from drewhk/wip-20890-stream-hub-drewhk
Stream Hubs
2016-08-24 13:33:02 +02:00
Endre Sándor Varga
bc358f3188 20890 Added MergeHub and BroadcastHub 2016-08-24 11:43:24 +02:00
Bernard Leach
ac8c4dc1b1 +Doc #20192 update http example to always consume response (#21241)
The single-request-in-actor-example does not consume the response
in where the status code is not OK.  Although this is unlikely
to cause backpressure issues as the response is likely to have
a HttpEntity.Strict entity, the example is confusing as it
does not follow the warning about always consuming the response.
2016-08-24 11:16:08 +02:00
Patrik Nordwall
8ab02738b7 Merge branch 'master' into wip-sync-artery-dev-2.4.9-patriknw 2016-08-23 20:14:15 +02:00
2beaucoup
0ed4a2aae9 =htp clean up json stream unmarshalling (#21233) 2016-08-19 16:21:33 +02:00
matsu-chara
1cb088ed81 fix eventbus doc-code (#21189)
remove `new AnyRef`

before:

```
new AnyRef {
  class Listener extends Actor {
    def receive = {
      case m: Jazz       => println(s"${self.path.name} is listening to: ${m.artist}")
      case m: Electronic => println(s"${self.path.name} is listening to: ${m.artist}")
    }
  }
```

after:
```
class Listener extends Actor {
  def receive = {
    case m: Jazz       => println(s"${self.path.name} is listening to: ${m.artist}")
    case m: Electronic => println(s"${self.path.name} is listening to: ${m.artist}")
  }
}
```
2016-08-16 15:20:44 +02:00
Hawstein
3e2bdb55a3 add extractActorSystem directive (#21097) 2016-08-16 14:59:05 +02:00
Johan Andrén
22d669f7f0 More generous timeout in file upload sample spec #20727 2016-08-09 18:03:35 +02:00
Shivansh Srivastava
25e4586aa0 [#21090] Added the improved code for loggingResponsetime and added the link in the docs (#21118)
* [#21090] Added the improved code for loggingResponsetime and added the link in the docs

* [#21090] Added javadocs for logRequestResponseTime

* [#21090] Removed the compilation error caused by the missing imports

* [#21090] Removed the compilation error caused by type

* [#21090] Improved the identation of the code

* [#21090] Improved the identation of the code

* [#21090] Removed the empty line

* [#21090] Refactored the documentation with clear explanations
2016-08-05 16:16:14 +02:00
Richard Imaoka
d1a9049fa0 Add samples to run HTTP and HTTPS servers in the same app #18551 (#21079) 2016-08-05 16:11:59 +02:00
Konrad Malawski
9cc32c3aba +htp #18837 completely rewrite EntityStreamingSupport
added CSV examples
updated docs
EntityStreamingSupport is now an entry point, to all streaming things
both read and write side use it
it's easy to extend as well
2016-08-02 15:27:21 +02:00
Konrad Malawski
6562ddd2df =htp address review feedback on JSON streaming 2016-08-02 15:27:21 +02:00
Konrad Malawski
c3308149be +htp #18837 allow as[Source[Tweet, NotUsed]] 2016-08-02 15:27:21 +02:00
Konrad Malawski
c76ec2ac15 +htp #18837 more docs and final cleanups, complete java docs 2016-08-02 15:27:21 +02:00
Konrad Malawski
db880a3db0 +htp #18837 implemented JavaDSL for Source streaming 2016-08-02 15:27:21 +02:00
Konrad Malawski
24454f7f09 +htp #18837 JSON framing and framed entity streaming directives 2016-08-02 15:27:21 +02:00
Endre Sándor Varga
083bfb6692 Fixed bug in Chunker, exposed by interpreter changes 2016-08-01 16:09:50 +02:00
Ian Clegg
f33f2197b6 =htc #20786 Fix for RFC 7235 so HttpChallenge only renders the realm when it has a value (#21043) 2016-07-28 13:32:50 +02:00
Konrad Malawski
c520df3210 =doc fix spray-json included snippet (#21045) 2016-07-27 20:05:30 +02:00
Richard S. Imaoka
15c77e3392 Document HTTP custom method (#20508) 2016-07-26 12:33:45 +02:00
Stefano Bonetti
fb1905870c =doc graphstage sink example (#20955) (#21030) 2016-07-26 12:20:08 +02:00
Hawstein
867131f626 +doc add unit tests for extractDataBytes and extractRequestEntity directives (#21022) 2016-07-26 12:02:04 +02:00