Skip to content

#5892 Inventory optimizations#5894

Open
akleshchev wants to merge 2 commits into
developfrom
andreyk/viewer_5892
Open

#5892 Inventory optimizations#5894
akleshchev wants to merge 2 commits into
developfrom
andreyk/viewer_5892

Conversation

@akleshchev

Copy link
Copy Markdown
Contributor

Make sure high priority messages aren't postponed.

Draft, as I'm not sure about correct ticket, nor whether this is final, I'm considering a 'general' priority mechanics that would be async inventory friendly.

@akleshchev akleshchev marked this pull request as draft June 3, 2026 22:43
@github-actions github-actions Bot added the c/cpp label Jun 3, 2026
@akleshchev akleshchev requested a review from marchcat June 3, 2026 22:43

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

This PR aims to ensure certain high-priority AIS inventory updates (e.g., COF/outfit-related operations) are processed without being postponed by the existing throttling/yield behavior, while also adding a few small performance optimizations in inventory LLSD parsing/loading paths.

Changes:

  • Introduces a “priority vs throttled” flag for AISUpdate processing and uses it to bypass timeout/yield logic for selected command types.
  • Improves inventory cache load performance by reserving capacity for categories/items vectors and reducing LLSD lookup overhead in skeleton load.
  • Refactors LLInventoryItem::fromLLSD() to reduce string comparisons by switching on key length first.

Reviewed changes

Copilot reviewed 4 out of 4 changed files in this pull request and generated 4 comments.

File Description
indra/newview/llinventorymodel.cpp Minor perf improvements (avoid temp LLSD copies; reserve vectors before loading inventory cache).
indra/newview/llaisapi.h Adds logging macro and introduces a new AISUpdate member flag controlling throttling behavior.
indra/newview/llaisapi.cpp Implements the new “priority” throttling/timeout bypass behavior for selected AIS command types.
indra/llinventory/llinventory.cpp Refactors LLSD item parsing to reduce per-field string comparisons (key-length prefilter).

💡 Add Copilot custom instructions for smarter, more guided reviews. Learn how to get started.

Comment thread indra/newview/llaisapi.h Outdated
Comment thread indra/newview/llaisapi.cpp Outdated
Comment thread indra/newview/llaisapi.cpp Outdated
Comment thread indra/newview/llaisapi.cpp Outdated
@akleshchev akleshchev force-pushed the andreyk/viewer_5892 branch from 7a843a7 to 91c9754 Compare June 4, 2026 22:28
@akleshchev akleshchev changed the title #5892 Process high priority inventory updates immediately #5892 Inventory optimizations Jun 4, 2026
@akleshchev akleshchev force-pushed the andreyk/viewer_5892 branch from 91c9754 to ed24ef0 Compare June 5, 2026 16:14
@akleshchev akleshchev marked this pull request as ready for review June 5, 2026 21:01
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants