mirror of
				https://github.com/iv-org/invidious.git
				synced 2025-11-03 22:21:55 +00:00 
			
		
		
		
	Rename threads to fibers
The config and command line options haven't been changed.
This commit is contained in:
		@@ -7,9 +7,9 @@ class Invidious::Jobs::RefreshChannelsJob < Invidious::Jobs::BaseJob
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def begin
 | 
			
		||||
    max_threads = config.channel_threads
 | 
			
		||||
    lim_threads = max_threads
 | 
			
		||||
    active_threads = 0
 | 
			
		||||
    max_fibers = config.channel_threads
 | 
			
		||||
    lim_fibers = max_fibers
 | 
			
		||||
    active_fibers = 0
 | 
			
		||||
    active_channel = Channel(Bool).new
 | 
			
		||||
    backoff = 1.seconds
 | 
			
		||||
 | 
			
		||||
@@ -19,26 +19,26 @@ class Invidious::Jobs::RefreshChannelsJob < Invidious::Jobs::BaseJob
 | 
			
		||||
        rs.each do
 | 
			
		||||
          id = rs.read(String)
 | 
			
		||||
 | 
			
		||||
          if active_threads >= lim_threads
 | 
			
		||||
          if active_fibers >= lim_fibers
 | 
			
		||||
            if active_channel.receive
 | 
			
		||||
              active_threads -= 1
 | 
			
		||||
              active_fibers -= 1
 | 
			
		||||
            end
 | 
			
		||||
          end
 | 
			
		||||
 | 
			
		||||
          active_threads += 1
 | 
			
		||||
          active_fibers += 1
 | 
			
		||||
          spawn do
 | 
			
		||||
            begin
 | 
			
		||||
              logger.trace("RefreshChannelsJob: Fetching channel #{id}")
 | 
			
		||||
              channel = fetch_channel(id, db, config.full_refresh)
 | 
			
		||||
 | 
			
		||||
              lim_threads = max_threads
 | 
			
		||||
              lim_fibers = max_fibers
 | 
			
		||||
              db.exec("UPDATE channels SET updated = $1, author = $2, deleted = false WHERE id = $3", Time.utc, channel.author, id)
 | 
			
		||||
            rescue ex
 | 
			
		||||
              logger.error("RefreshChannelsJob: #{id} : #{ex.message}")
 | 
			
		||||
              if ex.message == "Deleted or invalid channel"
 | 
			
		||||
                db.exec("UPDATE channels SET updated = $1, deleted = true WHERE id = $2", Time.utc, id)
 | 
			
		||||
              else
 | 
			
		||||
                lim_threads = 1
 | 
			
		||||
                lim_fibers = 1
 | 
			
		||||
                logger.error("RefreshChannelsJob: #{id} : backing off for #{backoff}s")
 | 
			
		||||
                sleep backoff
 | 
			
		||||
                if backoff < 1.days
 | 
			
		||||
 
 | 
			
		||||
@@ -7,8 +7,8 @@ class Invidious::Jobs::RefreshFeedsJob < Invidious::Jobs::BaseJob
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def begin
 | 
			
		||||
    max_threads = config.feed_threads
 | 
			
		||||
    active_threads = 0
 | 
			
		||||
    max_fibers = config.feed_threads
 | 
			
		||||
    active_fibers = 0
 | 
			
		||||
    active_channel = Channel(Bool).new
 | 
			
		||||
 | 
			
		||||
    loop do
 | 
			
		||||
@@ -17,13 +17,13 @@ class Invidious::Jobs::RefreshFeedsJob < Invidious::Jobs::BaseJob
 | 
			
		||||
          email = rs.read(String)
 | 
			
		||||
          view_name = "subscriptions_#{sha256(email)}"
 | 
			
		||||
 | 
			
		||||
          if active_threads >= max_threads
 | 
			
		||||
          if active_fibers >= max_fibers
 | 
			
		||||
            if active_channel.receive
 | 
			
		||||
              active_threads -= 1
 | 
			
		||||
              active_fibers -= 1
 | 
			
		||||
            end
 | 
			
		||||
          end
 | 
			
		||||
 | 
			
		||||
          active_threads += 1
 | 
			
		||||
          active_fibers += 1
 | 
			
		||||
          spawn do
 | 
			
		||||
            begin
 | 
			
		||||
              # Drop outdated views
 | 
			
		||||
 
 | 
			
		||||
@@ -8,12 +8,12 @@ class Invidious::Jobs::SubscribeToFeedsJob < Invidious::Jobs::BaseJob
 | 
			
		||||
  end
 | 
			
		||||
 | 
			
		||||
  def begin
 | 
			
		||||
    max_threads = 1
 | 
			
		||||
    max_fibers = 1
 | 
			
		||||
    if config.use_pubsub_feeds.is_a?(Int32)
 | 
			
		||||
      max_threads = config.use_pubsub_feeds.as(Int32)
 | 
			
		||||
      max_fibers = config.use_pubsub_feeds.as(Int32)
 | 
			
		||||
    end
 | 
			
		||||
 | 
			
		||||
    active_threads = 0
 | 
			
		||||
    active_fibers = 0
 | 
			
		||||
    active_channel = Channel(Bool).new
 | 
			
		||||
 | 
			
		||||
    loop do
 | 
			
		||||
@@ -21,13 +21,13 @@ class Invidious::Jobs::SubscribeToFeedsJob < Invidious::Jobs::BaseJob
 | 
			
		||||
        rs.each do
 | 
			
		||||
          ucid = rs.read(String)
 | 
			
		||||
 | 
			
		||||
          if active_threads >= max_threads.as(Int32)
 | 
			
		||||
          if active_fibers >= max_fibers.as(Int32)
 | 
			
		||||
            if active_channel.receive
 | 
			
		||||
              active_threads -= 1
 | 
			
		||||
              active_fibers -= 1
 | 
			
		||||
            end
 | 
			
		||||
          end
 | 
			
		||||
 | 
			
		||||
          active_threads += 1
 | 
			
		||||
          active_fibers += 1
 | 
			
		||||
 | 
			
		||||
          spawn do
 | 
			
		||||
            begin
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user