Debugging search performance issue; Genius intermittent rlyrics result rendered (seems like a different HTML body response)

This commit is contained in:
James Barnsley
2020-09-16 21:13:25 +12:00
parent 111e14a72d
commit 7fde458926
11 changed files with 46 additions and 77 deletions

View File

@ -99306,7 +99306,7 @@ var SearchResults = function SearchResults(_ref) {
}
if (resultsMatchQuery(spotify_search_results) && spotify_search_results[type]) {
results = [].concat(_toConsumableArray(results), _toConsumableArray(type === 'tracks' ? spotify_search_results[type] : Object(_util_arrays__WEBPACK_IMPORTED_MODULE_3__["indexToArray"])(items, spotify_search_results[type])));
results = [].concat(_toConsumableArray(results), _toConsumableArray(Object(_util_arrays__WEBPACK_IMPORTED_MODULE_3__["indexToArray"])(items, spotify_search_results[type])), _toConsumableArray(type === 'tracks' ? spotify_search_results[type] : Object(_util_arrays__WEBPACK_IMPORTED_MODULE_3__["indexToArray"])(items, spotify_search_results[type])));
}
var sort_map = null;
@ -104989,10 +104989,13 @@ var CoreMiddleware = function () {
case 'ITEMS_LOADED':
var mergedItems = [];
console.time('TIMER'); // THE FOLLOWING LINES ARE THE CULPRIT
action.items.forEach(function (item) {
mergedItems.push(_objectSpread(_objectSpread({}, core.items[item.uri] || {}), item));
store.dispatch(uiActions.stopLoading(item.uri));
});
}); // ABOVE
store.dispatch(coreActions.updateColdStore(mergedItems));
next(_objectSpread(_objectSpread({}, action), {}, {
items: mergedItems
@ -105401,6 +105404,7 @@ function reducer() {
var mergedItems = action.items.reduce(function (obj, item) {
return obj[item.uri] = item, obj;
}, {});
console.timeEnd('TIMER');
return _objectSpread(_objectSpread({}, core), {}, {
items: _objectSpread(_objectSpread({}, core.items), mergedItems)
});
@ -106024,6 +106028,7 @@ function getTrackLyrics(uri, path) {
var lyrics_html = lyrics.html();
lyrics_html = lyrics_html.replace(/(\[)/g, '<span class="mid_grey-text">[');
lyrics_html = lyrics_html.replace(/(\])/g, ']</span>');
console.debug(lyrics_html);
dispatch(coreActions.itemLoaded({
uri: uri,
lyrics: lyrics_html,
@ -108891,8 +108896,6 @@ var MopidyMiddleware = function () {
}
}
var albums_uris = Object(_util_arrays__WEBPACK_IMPORTED_MODULE_7__["arrayOf"])('uri', albums);
albums_uris = Object(_util_arrays__WEBPACK_IMPORTED_MODULE_7__["removeDuplicates"])(albums_uris);
store.dispatch(coreActions.itemsLoaded(albums)); // and plug in their URIs
store.dispatch({
@ -109136,15 +109139,16 @@ var MopidyMiddleware = function () {
}
}
var albums_uris = Object(_util_arrays__WEBPACK_IMPORTED_MODULE_7__["arrayOf"])('uri', albums);
albums_uris = Object(_util_arrays__WEBPACK_IMPORTED_MODULE_7__["removeDuplicates"])(albums_uris);
var _albums_uris = Object(_util_arrays__WEBPACK_IMPORTED_MODULE_7__["arrayOf"])('uri', albums);
_albums_uris = Object(_util_arrays__WEBPACK_IMPORTED_MODULE_7__["removeDuplicates"])(_albums_uris);
store.dispatch(coreActions.itemsLoaded(Object(_util_format__WEBPACK_IMPORTED_MODULE_6__["formatAlbums"])(albums))); // and plug in their URIs
store.dispatch({
type: 'MOPIDY_SEARCH_RESULTS_LOADED',
query: action.data.query,
context: 'albums',
results: albums_uris
results: _albums_uris
});
}
@ -113002,10 +113006,6 @@ function getSearchResults(type, term) {
}
if (response.artists !== undefined) {
dispatch({
type: 'ARTISTS_LOADED',
artists: response.artists.items
});
dispatch({
type: 'SPOTIFY_SEARCH_RESULTS_LOADED',
context: 'artists',
@ -113015,14 +113015,14 @@ function getSearchResults(type, term) {
},
results: Object(_util_arrays__WEBPACK_IMPORTED_MODULE_1__["arrayOf"])('uri', response.artists.items),
more: response.artists.next
});
}); // TODO: Loading items into index causes massive performance issue
// Not the formatter, not coldstorage (async) and not building new index
dispatch(coreActions.itemsLoaded(Object(_util_format__WEBPACK_IMPORTED_MODULE_3__["formatArtists"])(response.artists.items)));
}
if (response.albums !== undefined) {
dispatch({
type: 'ALBUMS_LOADED',
albums: response.albums.items
});
//dispatch(coreActions.itemsLoaded(formatAlbums(response.albums.items)));
dispatch({
type: 'SPOTIFY_SEARCH_RESULTS_LOADED',
context: 'albums',
@ -113041,11 +113041,8 @@ function getSearchResults(type, term) {
can_edit: getState().spotify.me && item.owner.id === getState().spotify.me.id,
tracks_total: item.tracks.total
});
});
dispatch({
type: 'PLAYLISTS_LOADED',
playlists: playlists
});
}); //dispatch(coreActions.itemsLoaded(playlists));
dispatch({
type: 'SPOTIFY_SEARCH_RESULTS_LOADED',
context: 'playlists',
@ -123905,13 +123902,12 @@ var Track = /*#__PURE__*/function (_React$Component) {
var _this$props6 = _this.props,
uri = _this$props6.uri,
track = _this$props6.track,
albums = _this$props6.albums,
load_queue = _this$props6.load_queue,
slim_mode = _this$props6.slim_mode,
uiActions = _this$props6.uiActions,
genius_authorized = _this$props6.genius_authorized;
if (Object(_util_helpers__WEBPACK_IMPORTED_MODULE_20__["isLoading"])(load_queue, ["spotify_track/".concat(Object(_util_helpers__WEBPACK_IMPORTED_MODULE_20__["getFromUri"])('trackid', uri))])) {
if (Object(_util_helpers__WEBPACK_IMPORTED_MODULE_20__["isLoading"])(load_queue, ["(.*)".concat(uri, "(.*)")])) {
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_components_Loader__WEBPACK_IMPORTED_MODULE_13__["default"], {
body: true,
loading: true,
@ -123920,16 +123916,7 @@ var Track = /*#__PURE__*/function (_React$Component) {
});
}
if (!track) return null; // Flatten our simple album so we can inherit artwork
if (track.album) {
var album = albums[track.album.uri];
if (album && album.images) {
track.images = album.images;
}
}
if (!track) return null;
return /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement("div", {
className: "view track-view content-wrapper",
"data-qa-node": "div",
@ -123974,7 +123961,7 @@ var Track = /*#__PURE__*/function (_React$Component) {
path: "common.by",
"data-qa-node": "I18n",
"data-qa-file": "Track"
}), /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_components_LinksSentence__WEBPACK_IMPORTED_MODULE_7__["default"], {
}), track.artists && /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_components_LinksSentence__WEBPACK_IMPORTED_MODULE_7__["default"], {
items: track.artists,
"data-qa-node": "LinksSentence",
"data-qa-file": "Track"
@ -124038,7 +124025,7 @@ var Track = /*#__PURE__*/function (_React$Component) {
"data-qa-node": "li",
"data-qa-file": "Track"
}, /*#__PURE__*/react__WEBPACK_IMPORTED_MODULE_0___default.a.createElement(_locale__WEBPACK_IMPORTED_MODULE_21__["I18n"], {
path: "stats.popularity",
path: "specs.popularity",
percent: track.popularity,
"data-qa-node": "I18n",
"data-qa-file": "Track"
@ -124147,10 +124134,7 @@ var mapStateToProps = function mapStateToProps(state, ownProps) {
uri: uri,
slim_mode: state.ui.slim_mode,
load_queue: state.ui.load_queue,
track: state.core.tracks && state.core.tracks[uri] !== undefined ? state.core.tracks[uri] : false,
tracks: state.core.tracks,
artists: state.core.artists,
albums: state.core.albums,
track: state.core.items && state.core.items[uri] !== undefined ? state.core.items[uri] : false,
spotify_library_albums: state.spotify.library_albums,
local_library_albums: state.mopidy.library_albums,
lastfm_authorized: state.lastfm.authorization,

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -106,7 +106,7 @@
// Release details
// These are automatically injected to built HTML
var build = "1600029609";
var build = "1600245321";
var version = "3.52.4";
// Construct the script tag