pnp / pnp/sp-dev-fx-controls-react

SitePicker issue long loading on big tenants

Open
#1,622 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Good First Issue 🏆 help wanted type:enhancement
Dominant language
TypeScript
Stars
433
Forks
418
Avg merge
5d 6m
Merged PRs (30d)
19

Description

Category

[x ] Enhancement

[x ] Bug

[ ] Question

Version

Please specify what version of the library you are using: [3.15.0]

Expected / Desired Behavior / Question

On click on the dropdown to be able to search directly without waiting the load of all site. Limit the search query to the input text with a start with or contains query.

Observed Behavior

On big tenant 23k site the component take 4 minutes to be responsive because it query all the sites of the tenant.

Steps to Reproduce

Component initialized as below

<SitePicker
context={this.props.context}
label={'Select destination site'}
mode={'site'}
allowSearch={true}
multiSelect={false}
onChange={(sites) => { console.log(sites); }}
placeholder={'Selected sites'}
searchPlaceholder={'Filter sites'}
deferredSearchTime={1000}
initialSites={[{url:"https://****************.sharepoint.com/sites/**************Inteligenceproject"}]} />
Having a lot (more than 20k) of site collection on the tenant

Thanks!

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by locating the SitePicker implementation and the entry point that loads and filters tenant sites, then reproduce the delay with a tenant containing more than 20,000 site collections. Done means the dropdown becomes searchable without loading every site first and still supports the provided search and initialSites configuration.

Written by the indexing model from the issue text.

Assessment

Tech stack
react, typescript
Domain
frontend, performance
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.