SMF 2.1 Upgrade (upgrade is now live)

Started by namida, August 28, 2024, 11:23:14 AM

Previous topic - Next topic

0 Members and 2 Guests are viewing this topic.

namida

EDIT: The upgrade is now live. Please report any issues (including oddities with the themes) in this topic.

Known issues:
- General instability. Might be fixed now, I'm monitoring it.
- Error being generated in logs (more detail in Staff Discussion), seems harmless but would be good to fix
- Slow loading of main page
- Color of mouseovered entries in Who's Online is bad on Lemmings Dark theme
- Color of some text in admin panel is bad on Lemmings Dark theme
- Color of "loading" type popups at top of screen (eg. when clicking Quick Edit) is bad on Lemmings Dark theme



So, it's come up a few times that the site should really be upgraded to SMF 2.1. I've finally begun working on this.

There's been many customizations to the site - some with addons (which have varying levels of support for SMF 2.1), some custom. Here's a list of what needs to be replicated on SMF 2.1 (struck out ones are already done):

PM attachments
> PM attachment plain text file bug fix
> Download links for PM attachments in emails
Spoiler tag
> Stripping spoilers from PM email notifications
Custom smileys
Custom themes
ReCAPTCHA or another strong CAPTCHA provider
Topic creator in emails

I expect it'll be at least a few days (more likely a couple of weeks), at least, before the update is ready to go live. Some downtime (likely 30mins - 1hr) will be necessary for the switchover.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

All that's left to do now is port (or re-create) the custom themes, and actually convert the site over. (Still no promises on the "when", though, but as it will involve downtime I'll give notice ahead of time.)
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

The SMF 2.1-based code is now ready to go live.

As mentioned, some downtime will be necessary for this to happen. I don't want to say an exact time because, quite frankly, I'm not reliable at sticking to those. Instead, I will give a window:

Expect the site (lemmingsforums.net only; this will not affect neolemmix.com) to be down for a while, starting sometime between 06:00 UTC and 12:00 UTC on 2024-09-08. Once it begins, downtime is expected to be around 1 to 2 hours.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Silken Healer

Before you start the upgrade, is it possible to put a new site on the server that hosts Lemmings Forums with a message explaining there is some down time (as it was for fart.tax, but it's intentional to be displayed), in case anyone tries to vist Lemmings Forums and hasn't seen this message?

namida

Yes; that's very easy to do when it's a planned and intended downtime and I was intending to do so.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

Downtime will begin at (give or take a few minutes) 07:00 UTC. I've just finished conducting a "mock run" of the update (taking the existing site data, attachments, etc and running it through the upgrade process; but not pushing the final result live) based on a snapshot of the site taken a couple of hours ago; a few issues were encountered but all was worked out. So I'm now ready to go ahead with the real run (which will use a fresh snapshot of the site, taken after putting the site into maintenance mode).
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

We're now live on SMF 2.1.4. Enjoy!

Please report any issues, including anything that seems a bit off about the themes. I'm aware of some minor stuff which I'll sort out over the coming days.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Silken Healer

#7
Quote from: namida on September 08, 2024, 08:42:02 AMPlease report any issues

This isn't really an issue per se, but I just noticed video embedding was finally added after it was suggested ages ago  :thumbsup:. did you take upgrading the forum as an oppertunity to add this suggestion: https://www.lemmingsforums.net/index.php?topic=5869.0 anyway, or was it just automatically added with the forum upgrade? Either way, I'm in support of video embedding being added.

Example:


Silken Healer

Also, I assume the new look of the forum is just part of the upgrade and there's no way to get how the forum used to look back? I do kind of miss the old look, but it's probably just because that's what I was already use to after several years of using the forum. It's no deal-breaker; I will likely just get used to this new look after a couple of days.

namida

Yeah, the new look is part of SMF 2.1.

Video embeds are a native feature in 2.1.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

#10
I've noticed the site has been somewhat unstable since the upgrade. Taking a quick look at it now, but it's getting late here so I might just put a temp-fix (that attempts to auto-restart the database process every so often; the source of the issue is the database process randomly terminating) in place for now and take a closer look tomorrow. (EDIT: Temp-fix is in place. Should the MySQL process terminate, it'll be restarted on the next 5 minute mark. This is the best I can do for now; I'll take a closer look tomorrow if issues persist.)

I've enabled logging that should help pinpoint the cause, too.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

I don't see anything in logs that suggest we had trouble overnight - no MySQL errors, no Apache errors, and the only site errors were failed logins (due to wrong passwords or not-yet-activated accounts). However, if anyone did witness the "Cannot connect to database" error after the previous message was posted, let me know.

I'll keep an eye on things today. That aside, I am aware the front page is a bit slow to load - as it's just slow, not broken, this is not as critical of a matter, but I will be looking into it soon.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

The slow loading of the front page is now, not 100% fixed, but hugely improved.

It really just comes down to that the database query used to build the Recent Posts list, is a very slow one, and even more so when we want only one entry per topic (because we still need to filter through all the messages that aren't the latest in the topic). With that being said, the modified version from the addon that restricts it to one entry per topic, was an order of magnitude or two more inefficient than the default SMF one (seemingly for little purpose other than making the code slightly easier to write). So I made my own tweaks to this query, basically making it as close as possible to the original SMF one while still getting the extra info needed for (a) one entry per topic and (b) showing the topic's title, not the reply's subject line.

Could I maybe improve it further if I tried? Possibly. But it's good enough - the main page was taking about 1.5s longer to load than other pages on the site; now it's more like 0.1s longer, which some people won't even notice. If a future SMF update improves it, I'll certianly try to port the improvements over to the modified version, but I don't think it's all that worthwhile going out of my way.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

namida

It's been raised that the Lemmings Light theme needs more green. I'll get onto that (most likely) later this week.
My projects
2D Lemmings: NeoLemmix (engine) | Lemmings Plus Series (level packs) | Doomsday Lemmings (level pack)
3D Lemmings: Loap (engine) | L3DEdit (level / graphics editor) | L3DUtils (replay / etc utility) | Lemmings Plus 3D (level pack)
Non-Lemmings: Commander Keen: Galaxy Reimagined (a Commander Keen fangame)

Simon

Thanks for looking into the performance!

The forum has custom code, looks like you've all reeled it through the update to 2.1.

-- Simon