by

Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • 16:19
    ignasi35 commented #29170
  • 16:12
    ignasi35 commented #29170
  • 15:35
    patriknw unlabeled #29172
  • 15:35
    patriknw closed #29146
  • 15:35
    patriknw labeled #29146
  • 15:35
    patriknw milestoned #29146
  • 15:34

    patriknw on master

    k8s-friendly SSLEngine provider… (compare)

  • 15:34
    patriknw closed #29152
  • 15:19
    YikSanChan closed #29183
  • 15:19
    YikSanChan commented #29183
  • 14:09
    akka-ci commented #29152
  • 13:32
    akka-ci commented #29152
  • 13:32
    akka-ci unlabeled #29152
  • 13:32
    akka-ci labeled #29152
  • 12:53
    ignasi35 synchronize #29152
  • 12:23
    ignasi35 labeled #29192
  • 12:23
    ignasi35 opened #29192
  • 12:16
    akka-ci unlabeled #29152
  • 12:16
    akka-ci labeled #29152
  • 12:14
    ignasi35 synchronize #29152
Johan Andrén
@johanandren
(That one was helped by just touching the logger early from a single thread, the test creation for example)
Enno
@ennru
I've a fix for that in Alpakka's testkit...
I promised to get it back into Akka a while back...
Patrik Nordwall
@patriknw
ah, good
kerr
@hepin1989
is akka-projection generalized for event-stream driven patten?
Enno
@ennru
We'll release Alpakka Kafka 2.0.3 tomorrow akka/alpakka-kafka#1107
Enno
@ennru
Wouldn't it be useful if ActorSystem.terminate took a CoordinatedShutdown.Reason?
Johan Andrén
@johanandren
That’d probably create a circular dependency though, ActorSystem < - > CoordinatedShutdown, so better have something like CoordinatedShutdown(system).terminate(Reason)?
Enno
@ennru
That API exists. Why would that dependency be a problem?
Johan Andrén
@johanandren
Cyclic dependencies gives spaghettio-code that is hard to evolve?
Why is it a problem using that existing API?
I mean, it’s probably quite uncommon, right?
Enno
@ennru
Maybe. That's why I asked if it would be useful. At least I added the possiblity to invent reasons in the docs PR and say there that ActorSystem.terminate is a way to initiate the coordinated shutdown.
Johan Andrén
@johanandren
(found the discussion over in the Akka HTTP PR)
I thought the Reason API was pretty much internal, for Lagom, but I see now that it is documented to be "external libraries applications may also define other reasons"
I like that there is a “CustomReason” which is a case object
Ah, it’s only in a spec nvm
Enno
@ennru
Yes, it lacks this UserInitiated(because) openness.
Johan Andrén
@johanandren
Is that really very useful though?
Where is it actually observed?
Enno
@ennru
IDK. It might give some confidence in why it shut down. AFAIK it shows only in the logs.
Johan Andrén
@johanandren
There’s only one debug log when coordinated shutdown is triggered as far as I can see?
So it must have been added for some other reason
Enno
@ennru
Ok, we can leave it. I guess if it becomes useful we can still improve.
Johan Andrén
@johanandren
Found this: akka/akka#24183
And this, which is highly internal: akka/akka#24048
(Running only some cluster phases depending on the reason, if it is that node was downed)
Ignasi Marimon-Clos
@ignasi35
Knowing the Reason that triggered the shutdown is useful in some edge cases. Usually, the edge cases surface when the Reason for termination is not a SIGTERM but a cluster Downing. As Johan pointed out, there’s some code in Akka itself and there’s more cases in both Lagom and Play where a shutdown task checks the Reason.
gosubpl
@gosubpl
hello :) trying to get back into CRDTs context ;) will take a look at akka/akka#27716 (albeit at slow pace). Thanks for keeping akka/akka-samples#64 alive, will also take a fresh look at it. Lots has change since I have touched the akka repo.
Arnout Engelen
@raboof
Cool, good to see you!
Patrik Nordwall
@patriknw
Welcome back @gosubpl . Would be great with some crdt love. Roper also has an open PR that you might be interested in. We could need some help completing it.
kerr
@hepin1989
_onConnect() {
  debug('connected: %j', this.options);
  // setNoDelay being a no-op if the socket is not connected
  // https://github.com/nodejs/node-v0.x-archive/issues/15443#issuecomment-99660819
  // noDelay default is true, and set it again to make sure of it
  this._socket.setNoDelay(true);

  this._state = 'connect';
  this.emit('connect');

  this.on('handshake', () => this._onHandshake());
  this.on('heartbeat', () => this._onHeartbeat());

  // 先发一次握手请求,收到回执后再ready
  this._write(this._getAkkaHandshakePacket());
}

 _getAkkaHandshakePacket() {
  const req = new AkkaProtocolMessage();
  req.instruction = new AkkaControlMessage();
  req.instruction.commandType = COMMAND_TYPE.ASSOCIATE;
  req.instruction.handshakeInfo = new AkkaHandshakeInfo();
  req.instruction.handshakeInfo.origin = new AddressData();
  req.instruction.handshakeInfo.origin.system = this.id;
  req.instruction.handshakeInfo.origin.hostname = this.host;
  req.instruction.handshakeInfo.origin.port = this.port;
  req.instruction.handshakeInfo.origin.protocol = 'tcp';
  req.instruction.handshakeInfo.uid = getUid();
  return this._pack(AkkaProtocolMessage.encode(req).finish());
}
Do you guys know what's this?
:)
Andrea Peruffo
@andreaTP
Node.js Akka-cluster joining?
kerr
@hepin1989
@andreaTP Yes
We are using Akka for our distributed scheduling. and we have a node.js clietn
Andrea Peruffo
@andreaTP
@hepin1989 and you are not contributing it back to Akka.Js? :-P
kerr
@hepin1989
@andreaTP I have very little knowledge of scala.js
Patrik Nordwall
@patriknw
Akka team's plan for the next 3 weeks akka/akka-meta#135
Patrik Nordwall
@patriknw
I'm seeing Symbol 'type akka.pattern.AskSupport' is missing from the classpath when switching branches again, and those are rather new branches. What did we change?
Arnout Engelen
@raboof
previously (akka/akka#26503) it was fixed in sbt 1.3.2, perhaps it was broken again in 1.3.10 (#28921)?
Odd Möller
@odd
Hi hakkers, I have come upon a need to keep ephemeral/transient data (i.e. non persistent) in a typed persistent actor's state but have found that somewhat difficult to achieve to my knowledge since the command handler of the typed persistent actor can only affect the actors state via persisting an event. To achieve this pass-but-not-persist, I added a pass method to the akka.persistence.typed.scaladsl.Effect object that works like persist in that the supplied event is passed on to the event handler but the event is not persisted (only passed). This seems to work nicely in our internal tests but I thought I should check here before going any further with a potential PR.
(An alternative implementation would be to have a marker trait (e.g. Transient) that can be mixed-in to those event types that should not be made persistent but only passed to the event handler. This would allow the regular persist method to be used for these event as well).
Any feedback or ideas would be most welcome.
Johan Andrén
@johanandren
@odd Gut feeling is that if it is transient it shouldn’t go in the state but stay “on the side”, so closing over some extra mutable thing with the command handler etc.
Odd Möller
@odd
@johanandren Thanks, that'll require a little bit of mutable state though (whereas with an event passed to the event handler the state can stay immutable) :thumbsup:
Johan Andrén
@johanandren
If you put it in the state you will also have to deal with that in snapshots, to not store the transient data but the rest, and then populate that on snapshot restore somehow. And then a replay will replay events on that state, which is potentially different than when the events are recorded. Lots of trouble hiding in there.
Odd Möller
@odd
@johanandren :dragon:
Patrik Nordwall
@patriknw
@odd it’s an interesting question and I have seen the need for it a few times, but as Johan said it’s not great to put it in the state/events. Also, transient state is not something we should encourage too much. See also akka/akka#25518
Odd Möller
@odd
@patriknw thanks for the enlightening link, will have to ponder some more on this. Perhaps delegating to non persistent child actors will do the trick as @rkuhn suggests.
Arnout Engelen
@raboof
I wonder if we should pick up akka/akka-http#2463 for Akka HTTP 10.2.0 given HTTP/2 is getting more popular /cc @jrudolph
1 reply