GithubHelp home page GithubHelp logo

Comments (5)

sm00th avatar sm00th commented on July 2, 2024 1

bitlbee-discord also has a lot of debug messages when BITLBEE_DEBUG env var is set, so running biltlbee like BITLBEE_DEBUG=1 bitlbee -Dnv might give you a better idea of what is going on at the time of timeout. It might be so that doing 130 requests in a loop is enough slowdown to trigger a timeout. In that case the fix will need to be on bitlbee's side but I am not sure whether it will be worth it as that many joined channels is hardly a normal usecase, I think most users don't use bitlbee-discord in auto_join mode and only add a couple of dozens channels they are interested in.

from bitlbee-discord.

sm00th avatar sm00th commented on July 2, 2024

Thanks for the writeup. I wonder where exactly it get's stuck. bitlbee-discord only calls discord_http_get_backlog() on channel join. Now the joins are handled by bitlbee itself in irc_channel_auto_joins() and that is a tight loop, but discord_http_get_backlog() only sends a request and handles the reply in a callback so it should not be blocking, I think.

from bitlbee-discord.

digitalcircuit avatar digitalcircuit commented on July 2, 2024

Hmm, good question. I didn't see any obvious blocking either, though I didn't look thoroughly.

From a combination of the Bitlbee wiki and an Internet search, it looks like I might be able to run something like…

sudo --user bitlbee valgrind --log-file=valgrind.log --tool=callgrind bitlbee -Dnv

Or using perf, perhaps:

sudo --user bitlbee perf record bitlbee -Dnv

I'll try to test this soon (part of this comment is a note to myself). I'm wondering if it's possible to recreate this more easily by artificially slowing network requests, or if my assumption is off base (it might not be network related).

from bitlbee-discord.

digitalcircuit avatar digitalcircuit commented on July 2, 2024

Good news-ish - I'm able to re-enable backlog fetching now that I actually need it after recent Discord changes to reset passwords of accounts using bitlbee-discord/etc. There's a bunch of 403 errors, but I always had that, so maybe it partially fetches..?

I'm not sure if we should close this issue for now - I could always re-open it later?

from bitlbee-discord.

digitalcircuit avatar digitalcircuit commented on July 2, 2024

I haven't been able to recreate this issue in day-to-day use for the past few months, so I think I can just close this.

Feel free to re-open (or others ask me to re-open) if others run into it!

from bitlbee-discord.

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.