Skip to content
GitLab
    • GitLab: the DevOps platform
    • Explore GitLab
    • Install GitLab
    • How GitLab compares
    • Get started
    • GitLab docs
    • GitLab Learn
  • Pricing
  • Talk to an expert
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
    • Switch to GitLab Next
    Projects Groups Topics Snippets
  • Register
  • Sign in
  • OpenTodoList OpenTodoList
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributor statistics
    • Graph
    • Compare revisions
    • Locked files
  • Issues 101
    • Issues 101
    • List
    • Boards
    • Service Desk
    • Milestones
    • Iterations
    • Requirements
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Artifacts
    • Schedules
    • Test cases
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
    • Model experiments
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Code review
    • Insights
    • Issue
    • Repository
  • Wiki
    • Wiki
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • rpdevrpdev
  • OpenTodoListOpenTodoList
  • Issues
  • #548
Closed
Open
Issue created Jul 10, 2022 by Martin Hoeher@mhoeherOwner

Some queries hang for a long time

Sometimes, item queries hang for a long time. This does not always happen - even with the same set of libraries on a device. It might be related to overall system use or something like that.

In any case, we shall:

  • Try to understand what happens - and ideally why.
  • Improve the access speed to the cache. It might be we currently block it for too long in some situations or something like that.
  • Generally, some "framework" to measure runtimes of cache jobs might be helpful.
  • Lastly, we might want to consider making jobs cancelable. Currently, this is not the case, so we might create a lot of jobs that cause stress on the cache. Also, if we leave a page with some pending jobs created by it, these will still be run, even though the recipient will never read the data retrieved by these jobs.

Update

Currently, we consistently use LMDB write transactions. This means, per environment, exactly one transaction runs at the time. In our case, this eventually means we have one running transaction at all! We should ensure that we create read only transactions at least for the jobs that only read from the cache.

Update 2

With the optimisation implemented, the performance seems way better. Still, some views (in particular the Schedule view) need a moment to update. It might make sense trying to look into further improvements before finally closing this issue.

Edited Jan 31, 2023 by Martin Hoeher
Assignee
Assign to
Time tracking