Performance Chat Summary: 15 November 2022

The full chat log is available beginning here on Slack.

Announcements

  • Excellent update on the 6.1.1 release, which is going out today12 out of the 30 tickets in the 6.1.1 release are focused on performance! That is a great outcome and a testament to the team’s hard work on addressing some of the follow up quirks around 6.1 performance

Focus area updates

Images

@adamsilverstein @mikeschroder

GitHub project

Feedback requested

Object Cache

@tillkruess @spacedmonkey

GitHub project

  • @spacedmonkey: No updates on object caching, has been focusing on 6.1.1 and theme.jsonJSON JSON, or JavaScript Object Notation, is a minimal, readable format for structuring data. It is used primarily to transmit data between a server and web application, as an alternative to XML.
    • A lot of theme.json parsing APIAPI An API or Application Programming Interface is a software intermediary that allows programs to interact with each other and share data in limited, clearly defined ways. have very serious performance issues
    • We have fixed a couple of them and they are making the way in 6.1.1
    • Another very relevant ticketticket Created for both bug reports and feature development on the bug tracker. is #57077 and #57114
  • @OllieJones: has a prototype of SQLite3 persistent object cache cooking; will make a module proposal soon (basically use SQLite for object caching rather than the main DB)
    • @flixos90: I wonder how much that overlaps or potentially conflicts with the proposal to use SQLite as database
    • @aristath: No overlap or conflictconflict A conflict occurs when a patch changes code that was modified after the patch was created. These patches are considered stale, and will require a refresh of the changes before it can be applied, or the conflicts will need to be resolved.… But they can definitely be combined for a performance boost
    • @flixos90: If a site can benefit from an SQLite DB speed and we implement that feature reliably, why would you not want to use that but then use it for an object cache?
    • @OllieJones: there are many installations that could benefit from a persistent object cache pluginPlugin A plugin is a piece of software containing a group of functions that can be added to a WordPress website. They can extend functionality or add new features to your WordPress websites. WordPress plugins are written in the PHP programming language and integrate seamlessly with WordPress. These can be free in the WordPress.org Plugin Directory https://wordpress.org/plugins/ or can be cost-based plugin from a third-party, without requiring a port of the main data to SQLite. And backup / redundancy / infrastructure would not need to change
    • @flixos90: The idea sounds very useful to me especially given wider support of SQLite, but I would still like to explore a better answer on balancing this “SQLite as cache” project with the “SQLite as DB” project and the tradeoffs between the two

Feedback requested

Measurement

N/A

GitHub project

  • No updates

Feedback requested

JSJS JavaScript, a web scripting language typically executed in the browser. Often used for advanced user interfaces and behaviors. & CSSCSS Cascading Style Sheets.

@aristath @sergiomdgomes

GitHub project

Feedback requested

Database

@olliejones

GitHub project

  • @aristath: SQLite PR is ready for another round of tests and reviews
    • @flixos90: reviewed it a few times and it looks excellent to me. Some quirks to still address mostly. One thing I still want to explore a bit more is trying to figure out a way to have the SQLite DB prepopulated so that you don’t end up on the WP Install screen after updating the module; this wouldn’t be a blockerblocker A bug which is so severe that it blocks a release., but it would make the user experience a whole lot smoother
    • @flixos90: I would suggest we polish this over the next week and aim for a merge within the next 2 weeks? This way we can publish the first version in the upcoming Performance Lab 1.8.0 release mid December
  • @aristath will work on drafting a Make CoreCore Core is the set of software required to run WordPress. The Core Development Team builds WordPress. post on the SQLite module for once it’s in the Performance Lab plugin
    • @flixos90: Best to draft it soon, so that we can review and finalize it early; this way we can publish it immediately the same day that that release will go out (December 19)

Feedback requested

Infrastructure

@flixos90

GitHub project

  • @flixos90: Next Monday we’ll have the Performance Lab 1.7.0 release
    • At the moment, there are still 5 PRs in the milestone which need to be committed or punted by tomorrow
    • @mukesh27: PR #582 is ready for your review
      • @flixos90: Looks like that PR tackles a bugbug A bug is an error or unexpected result. Performance improvements, code optimization, and are considered enhancements, not defects. After feature freeze, only bugs are dealt with, with regressions (adverse changes from the previous version) being the highest priority. that #578 also focuses on (although that one does a bit more)
    • @flixos90: Given the size of the database health checks PR, I think it’s a bit too early (or too late, if you look at it from another angle) to merge it this short before the release, also since it’s a new module
      • @OllieJones: ok. let’s puntpunt Contributors sometimes use the verb "punt" when talking about a ticket. This means it is being pushed out to a future release. This typically occurs for lower priority tickets near the end of the release cycle that don't "make the cut." In this is colloquial usage of the word, it means to delay or equivocate. (It also describes a play in American football where a team essentially passes up on an opportunity, hoping to put themselves in a better position later to try again.) it; will iterate on it so maybe we can merge it in the next few weeks for 1.8.0
    • @mehulkaklotar: PR #571 is under reviews right now, we will be able to merge it before tomorrow
    • @pbearne: I believe they are ready but will check

Feedback requested

Open floor

  • @OllieJones: I’d like to see w.org sign up for the https://greensoftware.foundation/
    • @flixos90: What kind of effort or commitment does that entail? As mentioned on the issue that you opened about this, this would probably be best to move forward with a Make Core post proposing it; getting a sense of interest at a larger scale is one reason I’d propose writing a Make Core post

Our next chat will be held on Tuesday, November 22, 2022 at 16:00 UTC in the #core-performance channel in Slack.

#core-js, #core-media, #performance, #performance-chat, #summary