Code Monkey home page Code Monkey logo

Comments (7)

Ivor avatar Ivor commented on September 28, 2024 1

Thank you very much! I will investigate after the weekend. My head is fried after this week :)

from horde.

derekkraan avatar derekkraan commented on September 28, 2024

Hi @Ivor,

The first error is odd, because the handle_call for :members only returns the members from the state of the GenServer. So if this is timing out then that indicates that the supervisor was busy doing something else for that time (terminating a process maybe?)

The second error, (:request_to_join_hordes) is really very strange. I don't see anywhere in the codebase where this could occur (there is an extra false in the tuple).

The third error, it seems like the members state doesn't match the expected shape {node_id, %{pid: pid}}. I don't know why this could be though, I've just reviewed the code and we only add [node_id, node_info(state)] to the members crdt.

What versions of horde and delta_crdt are you running?

from horde.

Ivor avatar Ivor commented on September 28, 2024

Hi Derek.

The version we are running are (from our mix.lock file):

"delta_crdt": {:hex, :delta_crdt, "0.3.1", "a50bff0460da2d9b0559a68c0116bf8f0c3847de272bdce4a391aae2063902d3", [:mix], [], "hexpm"},
"horde": {:git, "https://github.com/derekkraan/horde.git", "5cb07da15f5b9acba2d92a610309c0a52d0d9c37", []}

I think while my colleagues were testing this they would intermittently kill a node or one of them would kill their wifi to simulate a network partition. Perhaps the first error was as a result of that?

I'll have to investigate further. S=Do you have pointers for where to start to investigate any of these issues?

from horde.

derekkraan avatar derekkraan commented on September 28, 2024

:request_to_join_hordes is always coming from your own code somewhere, so you should be able to find a timeout error on that call somewhere in your logs to assist you in tracing the call from start to end.

To fix the first issue I'm considering that the call to members/1 should have a timeout of :infinity.

And for the last one, that's a real head-scratcher. You could try the latest master of delta_crdt to see if you can reproduce it. That should improve the overall performance as well.

from horde.

derekkraan avatar derekkraan commented on September 28, 2024

Hi @Ivor, if you have time, could you test version 0.5.0-rc.1 to see if this bug has been fixed?

from horde.

derekkraan avatar derekkraan commented on September 28, 2024

I'm closing this issue for now since Horde has been overhauled quite a bit since this was opened. Feel free to re-open (or open a new issue) if you see this again with 0.5.0-rc.12 or higher!

from horde.

Ivor avatar Ivor commented on September 28, 2024

Hi Derek. Thank you :) Horde is very much appreciated. I'm pretty swamped at the moment, but will probably need to do some work on the Horde related part of our system in a few weeks. Will have a look then!

Good luck!

from horde.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.