Project

General

Profile

Actions

Task #4153

open

Optimize readme fetching by changing the system of readme detection

Added by Marcin Kuzminski [CTO] over 7 years ago. Updated over 7 years ago.

Status:
Resolved
Priority:
Normal
Category:
-
Target version:
Start date:
05.08.2016
Due date:
% Done:

0%

Estimated time:
Sorting:
Commit Number:

Description

Mostly based on the task from customer, It seems the current readme search logic is slow, and fragile to errors. Repositories that don't have readme do very expensive checks for over 30 files.

The current logic iterates over generate patterns of files and tries to search for such file inside the repository. In GIT case with a lot of BINARY big files it's very slow to call get_node('unknonw_readme_path')
IMHO the whole search for readme logic is flowed. Image there's no readme we have to iterate over 30-50 combinations to search for readme.

Customer reported that in his case opening summary page (in which renderer search is taking place) takes 30-50s !!

Plan to fix this is:

  • add renderer to per-repo-settings. It will allow to define what renderer each repository uses. Probably need some changes how we fetch the global renderers.
    per repo renderer will allow to generate per-repo order of readmes.

  • added new option about readme generation to into global visual and per repo: visual, consisting of:
    autodetect (based on renderer try to auto-detect like currently)
    none (don't load any readmes),
    <list_of_patterns> List in order of picked renderer either global, or local


Related issues 2 (2 open0 closed)

Related to RhodeCode CE/EE - Task #4051: [ux, renderering] Consistent formatting on text fields.New06.09.2016

Actions
Related to RhodeCode CE/EE - Feature #4222: Configurable detection of READMEsNew09.09.2016

Actions
Actions #1

Updated by Marcin Kuzminski [CTO] over 7 years ago

  • Description updated (diff)
Actions #2

Updated by Martin Bornhold over 7 years ago

  • Status changed from New to In Progress
  • Assignee set to Martin Bornhold
Actions #3

Updated by Johannes Bornhold over 7 years ago

  • Assignee changed from Martin Bornhold to Johannes Bornhold
Actions #4

Updated by Lisa Quatmann over 7 years ago

  • Related to Task #4051: [ux, renderering] Consistent formatting on text fields. added
Actions #5

Updated by Johannes Bornhold over 7 years ago

  • Related to Feature #4222: Configurable detection of READMEs added
Actions #6

Updated by Johannes Bornhold over 7 years ago

  • Status changed from In Progress to Resolved
Actions #7

Updated by Johannes Bornhold over 7 years ago

The issue itself got fixed in https://internal-code.rhodecode.com/rhodecode-enterprise-ce/pull-request/2647

The idea to make the readme detection configurable has been split out into https://issues.rhodecode.com/issues/4222

Actions

Also available in: Atom PDF