Commit graph

19235 commits

Author SHA1 Message Date
Patrik Nordwall
aa2c4fe7bf handle serialization errors, #20324 2016-05-27 12:26:15 +02:00
Patrik Nordwall
e74e1da6cc optimize currentTransportInformation 2016-05-27 12:26:14 +02:00
Patrik Nordwall
d759f738ea add serialization api based on ByteBuffer, #20324
* new trait ByteBufferSerializer with fromBinary and toBinary
  methods that takes ByteBuffer, this can be mixed in to
  existing serializer without breaking compatibility
* implement the ByteBufferSerializer in the ByteArraySerializer
* minor adjustment of the class manifest cache
2016-05-27 12:26:08 +02:00
Patrik Nordwall
2ff76299c9 Merge pull request #20633 from akka/wip-artery-jmh-bench-patriknw
add JMH benchmark for encoder decoder stage
2016-05-27 12:22:27 +02:00
Patrik Nordwall
5b7c978844 add JMH benchmark for encoder decoder stage
* CodecBenchmark that tests encode, decode and combined
  encode + decode
* refactoring of codec stages to make it possible to
  run them without real ArteryTransport
* also fixed a bug in inbound stream for large messages,
  it was using wrong envelope pool
2016-05-27 12:21:30 +02:00
Patrik Nordwall
5477b4e99b Merge pull request #20557 from akka/wip-20317-giveup-patriknw
give up sending after a while, #20317
2016-05-20 14:48:10 +02:00
Patrik Nordwall
68a8a3c226 Merge pull request #20578 from akka/wip-sync-artery-with-2.4.6-patriknw
sync Artery with 2.4.6
2016-05-20 14:47:11 +02:00
Patrik Nordwall
e9e65c463f improve restart logging 2016-05-20 13:51:39 +02:00
Patrik Nordwall
c90121485f give up sending after a while, #20317 2016-05-20 13:51:39 +02:00
Patrik Nordwall
b17c4c1d9b Merge pull request #20575 from akka/wip-rename-protocol-patriknw
rename protocol to artery
2016-05-20 13:44:35 +02:00
Patrik Nordwall
6b435a5646 Merge branch 'master' into wip-sync-artery-with-2.4.6-patriknw 2016-05-20 13:20:13 +02:00
Patrik Nordwall
4b048f5c4b Merge pull request #20544 from akka/wip-20317-aeron-log-patriknw
log Aeron errors, #20317
2016-05-20 13:07:04 +02:00
Patrik Nordwall
7288107031 Merge pull request #20572 from akka/wip-serialization-perf-patriknw
improve codec performance
2016-05-20 13:06:47 +02:00
Patrik Nordwall
6603ed5236 temporary workaround for failing RemoteRestartedQuarantinedSpec 2016-05-20 12:46:29 +02:00
Johan Andrén
cd71643a91 [WIP] Large message stream for Artery (#20545)
* First stab at separate large message channel for Artery

* Full actor paths, no implicit "/user/" part

* Various small fixes after review

* Fixes to make it work after rebasing

* Use a separate EnvelopeBufferPool for the large message stream

* Docs for actorSelection not sending through large message stream
2016-05-20 12:40:56 +02:00
Patrik Nordwall
121840589b improve codec performance
* caching of actor refs in Encoder, Decoder
* dynamicAccess.getClassFor in Serialization is costly,
  so introduced a cache for the class manifests there
2016-05-20 11:40:22 +02:00
Patrik Nordwall
8859fc35e8 increase Aeron liveness timeout 2016-05-20 11:24:43 +02:00
Patrik Nordwall
23e48b1b35 rename protocol to artery 2016-05-20 11:23:46 +02:00
drewhk
2c47f1883d Merge pull request #20554 from Hawstein/hawstein-20288-pushpullstage-to-graphstage
Replace PushPullStage with GraphStage in HttpServerBluePrint
2016-05-20 10:25:19 +02:00
Hawstein
f61a67d57a make OneHundredContinueStage an object 2016-05-19 22:52:49 +08:00
drewhk
a4b996546e Merge pull request #20457 from drewhk/wip-artery-envelope-buffers-drewhk
Buffer and header parsing support
2016-05-19 15:06:11 +02:00
Endre Sándor Varga
1828a8def3 Buffer and header parsing support 2016-05-19 13:40:09 +02:00
Johan Andrén
83c60cb034 Publish akka-osgi but do not include it in dist #20548 (#20549) 2016-05-19 12:41:38 +02:00
Samuel Tardieu
e0c64f59d8 =str #20550 only accept -1 for infinite retries in recoverWithRetries (#20555) 2016-05-19 11:45:31 +02:00
Johan Andrén
acb71ac4e5 !htp Move classes from javadsl to javadsl.server to keep in release jars #20556 (#20558) 2016-05-19 11:30:59 +02:00
Hawstein
cc2e0e8d32 replace PushPullStage with GraphStage in HttpServerBluePrint 2016-05-19 03:40:02 +08:00
Ashu Gupta
e2c1638171 HTTP: Document how a type is marshalled into json #20514 2016-05-18 18:39:10 +02:00
Johan Andrén
f974ae984d Removing pidfile that got in the JavaDSL merge 2016-05-18 16:16:36 +02:00
Patrik Nordwall
76b29a35e0 log Aeron errors, #20317 2016-05-18 13:54:36 +02:00
Patrik Nordwall
e36a13d48a Merge pull request #20517 from akka/wip-20313-handshake-incarnations-patriknw
handshake and quarantine, #20313
2016-05-18 10:36:08 +02:00
Patrik Nordwall
c22d13d3a0 Merge pull request #20541 from akka/wip-merge-2.4.5-artery-patriknw
merge master (2.4.5) into artery-dev
2016-05-18 10:34:57 +02:00
Patrik Nordwall
935ab0d82e make use of auto port selection in tests 2016-05-18 09:22:22 +02:00
Patrik Nordwall
96b697d92f handle stream failures by restarting, #20317
* allow X restarts within Y seconds
* and handle handshake timeout
2016-05-18 08:13:22 +02:00
Patrik Nordwall
8e316d06e9 harden resend sys msg test
* the periodic resend kicked in too early, resending 2 before the Ack(2)
  was delivered
* also improved SystemMessageDelivery stage to not tick periodically
  when there are no messages to deliver (buffer empty)
2016-05-18 08:07:46 +02:00
Patrik Nordwall
d4c086c0ff add quarantining state and inbound quarantine check, #20313
* InboundQuarantineCheck stage sends back Quarantined control
  message if sender system is quarantined
* Ported old RemoteRestartedQuarantinedSpec
* outbound quarantine check and piercing with ActorSelectionMessage
* port of old RemoteQuarantinePiercingSpec and PiercingShouldKeepQuarantineSpec
* quarantine if sys msg buffer overflow
2016-05-18 08:07:46 +02:00
Patrik Nordwall
67325da722 init new handshake for unknown origin, receiver restarted, #20313
* handle UID incarnations, shared association state that can be swapped
  for new handshakes
* detect that message comes from unknown origin and then initiate new
  handshake (handled by InboundHandshake stage)
* simplify the OutboundHandshake stage
  * doesn't have to listen for HandshakeRsp replies, it can just listen
    to when the uniqueRemoteAddress future is completed, InboundHandshake
    stage completes the handshake when it receives HandshakeRsp
  * send the HandshakeReq via the control message ingress, instead of
    pushing it downstreams, than also means that HandshakeReq is only sent
    on the control stream, which is good
* materialization race condition
2016-05-18 08:01:46 +02:00
Patrik Nordwall
1296f9986f make control message ingress buffer bounded 2016-05-18 08:00:47 +02:00
Patrik Nordwall
d15cab71bd amend build for artery dev 2016-05-18 07:30:48 +02:00
Johan Andrén
5e3eb4bd8c Auto port selection and SunnyWeatherSpec for Artery (#20512)
* Automatic port selection when port 0 configured
* Combine remoting and artery SunnyWeatherSpec
* Default to port 0 for artery in MultiNodeSpec.nodeConfig
2016-05-17 14:17:21 +02:00
Patrik Nordwall
50ac9134b8 Merge branch 'master' into wip-merge-2.4.5-artery-patriknw 2016-05-17 13:13:13 +02:00
Johan Andrén
ebef60388f Workaround for unidoc failing to compile scaladsl.server.Rejection 2016-05-16 16:59:12 +02:00
Oleksii
dc67603400 20413: Implemented. Now 0 and 1 treated as boolean if specified. (#20526)
20413: Added test case according to the code review
2016-05-16 11:10:51 +02:00
Johan Andrén
ab526356dd Docs for half closed client WebSockets #19957 2016-05-16 11:10:30 +02:00
Johan Andrén
192fa56975 Removing accidentally committed async-client subproject (#20530) 2016-05-16 11:09:19 +02:00
Nikita Melkozerov
9e6dab4ee1 +doc #17972 added spray migration guide (#20511) 2016-05-16 10:50:02 +02:00
Johan Andrén
29029be31d !htp #18919 #19519 New JavaDSL for Akka HTTP (#20518)
* !htt #18919 #19519 Align Java HTTP server DSL with Scala

This commits replaces the Java HTTP server DSL with a Java-8 centric one
which exposes all scala DSL concepts to be usable from Java, including
custom directives, (un)marshallers, rejections, headers, and type safety
for path and query parameters.

* Add RequestContext and RouteResult to Java DSL
fix websockets
WIP bring java docs up to date.
This applies some updates to the root-level documentation

* [htp] Fix java documentation to correctly mention timeouts

Timeouts are configured the same in Java and Scala. Hence, linking to the
scala docs for timeouts from Java.

* =htc fix optionalHeaderValueByType in Java

* =htt #20200 fix java testkit always using NoLogging instead logger

* +htt actually run new javadsl tests, allow overriding config

* =htt improve javadsl test infra with more details when fails

* =htt fix bug in wrong path matcher exposed

* +htp add missing remaining path matcher

* =htp Java DSL cookie tests fixed

* =htt Java DSL ParameterDirectivesTest fixed

Protect the tweets from scalariform

Incorrect response expectations in cache condition directives spec fixed

* =htt Path directives for Java DSL

* +!htt PathMatchers rewritten, made uniform and tests passing

* Bugfix in java reject and a little test-boyscouting

* Revert "Incorrect response expectations in cache condition directives spec fixed"

This reverts commit cd50e89d45db010309f8249b090ea654ebb11c7a.

* +htc HttpAPIsTest is compile time only, not for running
Also, moved from the client package since not strictly a client test.

SecurityDirectives passing

Two faulty tests and two actual bugs.

Fix for cache condition spec not working

* Not sending in Unit instad of the implicit magnet in the test
* HeaderMagnet now works as expected
* Java API added for - and + on DateTime

PetStore example and test fixed

* Annotations to make marshalling work without default constructor
* Made model class immutable

Incorrect tests fixed

Some scaladoc boyscouting as bonus

* =htt RequestValTest sprinkled out across multiple directive tests

Client ip extraction test with incorrect header name fixed.

* =htt Incorrect CodingDirectivesTest fixed.

* =htt Bugfix for Java Unmarshaller.firstOf and fixes to JavaRouteTest

* =htt MarshallerTest fixed

* Missing seal signature added to JavaDSL
* More consistent (with Scala) test kit setup for Java
* missing Javadocs added
* Thread.sleep in default exception handler removed

* =htt copy directive docs, prepare for finishing it up

* +htt SecurityDirectives.authorize variants and test coverage added

* +htt Custom headers in Java DSL

* =htt WIP on java docs

* +htp add missing parameterOrDefault directive
Fixed a lot of doc warnings

* =htc intense progress on javadsl docs

* =htc #20470 Link to issue about docs and fix compile error
compile, migration guide
don't mima check http-experimental

* =htt Java DSL doc warnings fixed.
Only `Could not lex literal_block` ones left now

* =htc fix mima settings

* =doc fix MethodDirectives doc test with custom method

* =htc fix coding directives spec after bad merge

* =htc fix concat being corresponding to route() in javadsl

* =htt Disable consistency check for route/concat as it fails only on ci server

* !htt Minor fixes to PathMatchers
2016-05-16 10:38:40 +02:00
Patrik Nordwall
094c8974ed Merge pull request #20453 from johanandren/wip-document-untyped-actor-with-unrestricted-stash-johanandren
=act #20447 fix UntypedActorWithStash javadoc
2016-05-13 10:12:37 +02:00
Patrik Nordwall
695b237156 =act #16969 Props.create must not check STATIC flag (#20488)
* =act #16969 Props.create must not check STATIC flag

* also support the new Creator<SomeActor> without class param
2016-05-13 09:57:37 +02:00
Patrik Nordwall
7ccb7f292c Merge pull request #20510 from akka/wip-20313-stages-unit-tests-patriknw
add unit tests for the handshake and control stages, #20313
2016-05-13 08:05:21 +02:00
Patrik Nordwall
62a19471b7 Merge pull request #20462 from huntc/client-observer
Observable cluster client and its receptionist
2016-05-13 07:59:39 +02:00