Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
  • Dec 14 19:13
    hwanders commented #4096
  • Dec 14 13:05
    IgorFedchenko commented #4085
  • Dec 14 03:08
    hhko commented #4094
  • Dec 13 21:37
    Aaronontheweb commented #4085
  • Dec 13 20:28
    IgorFedchenko commented #4085
  • Dec 13 20:27
    IgorFedchenko commented #4085
  • Dec 13 15:38
    Aaronontheweb labeled #4096
  • Dec 13 15:38
    Aaronontheweb milestoned #4096
  • Dec 13 15:38
    Aaronontheweb labeled #4096
  • Dec 13 15:38
    Aaronontheweb opened #4096
  • Dec 13 10:41
    peirens-bart opened #4095
  • Dec 13 08:37
    Aaronontheweb synchronize #4071
  • Dec 13 08:13
    jiyeongj opened #4094
  • Dec 12 15:42
    Aaronontheweb synchronize #4086
  • Dec 12 15:42
    Aaronontheweb closed #4083
  • Dec 12 15:42

    Aaronontheweb on dev

    Fix #4083 - Endpoint receive bu… (compare)

  • Dec 12 15:42
    Aaronontheweb closed #4089
  • Dec 12 15:42
    Aaronontheweb labeled #4093
  • Dec 12 15:42
    Aaronontheweb labeled #4093
  • Dec 12 15:42
    Aaronontheweb labeled #4093
Zetanova
@Zetanova
;(
How to download the Debug Files (*.pdb) for the Dev builed. I added https://nuget.symbolsource.org/MyGet/akkadotnet to the Source Urls but VS cant find them there
Zetanova
@Zetanova
PendingOperations the LinkedList.Remove() is not thread safe
Need to get my Dev-fork up
Chris G. Stevens
@cgstevens
Quick Question: It does look like this is happening but want to validate. I am seeing, based on the messages, that when my member joins it is set to the Leader for that role before I get the message that it is actually up. Is this how it is actually happening or I am just getting that message first. In fact I am getting the message that the member is up 3-6 seconds after I was told that it is the leader for that role.... if it is happening this way why is it being promoted to leader when it isn't considered up.
Bartosz Sypytkowski
@Horusiath
@Zetanova concerning transactions errors - they should be fixed by #1306
I'll start to fix the rest of the errors you've found today
Zetanova
@Zetanova
@Horusiath thx, is there a Lock Free LinkedList in Akka or similar?
Bartosz Sypytkowski
@Horusiath
thx, but let me see, maybe it won't be necessary, if it won't be possible to make whole operation working on synchronous inside an actor, we still have an arsenal of atomic/immutable options inside akka itself
Zetanova
@Zetanova
LinkList and Set is fine in an actor, but if some concurrent is using them, there can be hiden bugs. 10M operations can be successfull 10M+1 is failing once in a week. LockFree Queue and LinkedList are nice because it can be a proteced property of a base class. Immutable Lists need still the lock or spin-lock to copy the list, like ConcurrentBag<T>
Christian Duhard
@cduhard
hmm this Terminated code doesn't seem to work
it's failing on _pendingCommands = groups.First(x => !x.Key).ToList();
Zetanova
@Zetanova
yes
@cduhard fast fix
var commands = new List<PendingCommand>(_pendingCommands.Count - i);
commands.AddRange(_pendingCommands.Where(cmd => cmd.PersistenceId != pid));
_pendingCommands = commands;
Christian Duhard
@cduhard
so i ma replacing all 3 lines with that
where does I come from?
Zetanova
@Zetanova
found commands
i++ in the loop
_pendingCommands.Where(cmd => cmd.PersistenceId == pid)
Christian Duhard
@cduhard
i'm missing something
Zetanova
@Zetanova
remove this toList and stuff
Christian Duhard
@cduhard
the current code is
            var groups =
                _pendingCommands.GroupBy(cmd => cmd.PersistenceId == terminated.ActorRef.Path.Name).ToArray();
            _pendingCommands = groups.First(x => !x.Key).ToList();
            var commands = groups.First(x => x.Key);
            foreach (var pendingCommand in commands)
            {
                var child = Recreate(pendingCommand.AggregateId, pendingCommand.PersistenceId);
                child.Tell(pendingCommand.Command, pendingCommand.Sender);
            }
Zetanova
@Zetanova
var pid = terminated.ActorRef.Path.Name;
int i = 0;
foreach (var pendingCommand in _pendingCommands.Where(cmd => cmd.PersistenceId == pid))

{

    var child = Recreate(pendingCommand.AggregateId, pendingCommand.PersistenceId);

    child.Tell(pendingCommand.Command, pendingCommand.Sender);
    i++;       
}

var commands = new List<PendingCommand>(_pendingCommands.Count - i);
commands.AddRange(_pendingCommands.Where(cmd => cmd.PersistenceId != pid));
_pendingCommands = commands;
Christian Duhard
@cduhard
got it, thanks. I'll give this a try.
@Zetanova what are you using for storage?
Zetanova
@Zetanova
sql-server for now. but the storage type should be picked by the AR-type
Christian Duhard
@cduhard
how do you mean?
Zetanova
@Zetanova
file, document-store, sql are all valid
Christian Duhard
@cduhard
i was going to give EventStore a try
Zetanova
@Zetanova
File => for very large AR's maybe explicit on a partition/drive SSD
DocumentStore => normal for AR's
sql => maybe faster for some kind of operations (need to test later on)
Christian Duhard
@cduhard
weird getting dead letters now
Zetanova
@Zetanova
In a local akka.net buget build where to set the BUILD_NUMBER of a package? Want to patch the Akka.Persistence.Sql.Common so that the SqlServer is dont updating it on install
Zetanova
@Zetanova
RELEASE_NOTES.md file.
Christian Duhard
@cduhard
wonder why EventStore ain't got no love for a Akka.Persistence
Yin Zhang
@melcloud
Dear all,
just wondering if it is safe to use PersistView?
My idea is to have an actor which persist events such as quoteCreated. Then once another service is online, a persistView actor is created and do at least once delivery to that service
Zetanova
@Zetanova
@Horusiath You already change in Akka.Persistence.Sql.Common the DbConnection to short use pattern?
Bartosz Sypytkowski
@Horusiath
@rogeralsing I think, we still have some problems concerning stashing and message duplicates - we changed custom equality to reference equality to detect duplicates inside the stash, but actually sometimes we may want to store the same message twice (like in the case of singleton messages or strings)
@Zetanova what do you mean?
Zetanova
@Zetanova
@Horusiath currently in JournalDbEngine and DbSnapshotStore the dbconnection is a singleton but executes concurrent sqlCommands on it (at least it is trying to do). the dbConnection should be create for each execution and disposed after. It is backed by the sql-connection-pool
Bartosz Sypytkowski
@Horusiath
this part is covered by #1306 - it will use new connection for each operation
Zetanova
@Zetanova
its not realy using a new connection, its peeking one from the sql-connection-pool
Bartosz Sypytkowski
@Horusiath
yes, I know ;)
Aaron Stannard
@Aaronontheweb
@stefansedich working on upgrading the version of Mono on our build agents
since the DNS system still barfs up those DNS assertions whenever I use NuGet.exe