The Bitbucket Server frontend currently fetches all the emoticons at page load on the pull request page and caches them in the web browser local storage.
This works fine with the default set of emoticons but becomes an issue when administrators expand the set of available emoticons with third party plugins. The size of the emoticon set becomes larger and can exceed the quota allowed for local storage for the Bitbucket Server domain.
To solve this, a solution would be to instead only request pages of emoticons from the REST API when necessary, and allow the emoticon REST API to accept a query filter. Having paging and filtering on the backend side would remove the need to cache all emojis at page load on the client side.