Solved Understanding releases

I'm currently running the 10.3-RELEASE so I will need to upgrade within the next 6 months. Naturally, I wish to minimise the number of such upgrades without losing timely security support. I am therefore struggling to understand the information at https://www.freebsd.org/security/security.html to see how best to achieve a supported stable system for as long as possible.

I'm struggling because the information seems confusing. On one hand there is the -STABLE branch which is supported until 2021, and then there are the -RELEASEs which are supported for three months after the next minor point release. The table implies it would be better to install a -STABLE release rather than one of the point releases, but then lists the build as "n/a" which could mean either "not applicable" or "not available". Is the -STABLE branch just a concept, embracing all the -RELEASEs with that major number, or is it something I can install that will be maintained for the next 3-4 years? There is mention a few paragraphs above the table of the strings returned, I presume, by uname -r which implies there is a -STABLE version which can be installed, but I saw another thread on this forum in which someone had asked how they could upgrade their 11.1-STABLE with freebsd-upgrade and was told it only works with releng releases.

The published information is not at all easy to understand in terms of what one should install for production use to gain the longest stable supported system or know the best time to make a major version upgrade. Perhaps the answer to this should be a sticky so others can find it easily, as I suspect it must have been asked and answered many times on the forum in the past, but now be difficult to find unless one knows the exact keywords to bring it up in a sufficiently short list to be identified.
 
I'm currently running the 10.3-RELEASE so I will need to upgrade within the next 6 months. Naturally, I wish to minimise the number of such upgrades without losing timely security support. I am therefore struggling to understand the information at https://www.freebsd.org/security/security.html to see how best to achieve a supported stable system for as long as possible.

I'm struggling because the information seems confusing. On one hand there is the -STABLE branch which is supported until 2021, and then there are the -RELEASEs which are supported for three months after the next minor point release.
First: -STABLE as well as -CURRENT are considered to be developer snapshots. Therefor they're not officially supported, not in the way of ensuring that things continue to work. In fact, generally speaking there are no guarantees at all that things will actually work at all with these. -STABLE isn't as bleeding edge as -CURRENT, but even so... It's not supported in the way you might think it is.

This is just my opinion but I think now would be a good time to consider an upgrade from 10.3 to 11.1, something which eventually is bound to be required anyway so you might as well do this way ahead of the moment where you no longer have a choice. I myself am already preparing for a few months to do that kind of upgrade on my park.

Generally speaking a major release will continue to be supported until the next major release comes out. After that it will be a matter of time before it will eventually get EOL'd. And the time between major releases is usually quite long. Just for context: 10.0 got released in January 2014, and as you can see 10.3 will be EOL in April 2018. Therefor the "10 branch" has been supported for over 4 years. And it might become a little longer because 10.4 is also on the horizon (but I don't know the details of that).

The table implies it would be better to install a -STABLE release rather than one of the point releases, but then lists the build as "n/a" which could mean either "not applicable" or "not available". Is the -STABLE branch just a concept, embracing all the -RELEASEs with that major number, or is it something I can install that will be maintained for the next 3-4 years?
See above. Also see this page about snapshot releases. There is no need to resort to a snapshot in order to get a long period of support. Of course, eventually you will have to upgrade, but a minor release upgrade (10.2 to 10.3 for example) is generally quite easy and harmless.

The published information is not at all easy to understand in terms of what one should install for production use to gain the longest stable supported system or know the best time to make a major version upgrade.
I have to disagree with that, but I will acknowledge that I am a little biased because I've been using FreeBSD for quite a while now.

See: if you go to the releases information page you'll see what I mean. It clearly mentions that 11.1 and 11.0 are supported releases, and that 10.3 is a legacy release. It also mentions that -STABLE is basically a snapshot.

The release information page is where you normally begin looking when you want to download FreeBSD, the security information page is merely additional information. But... I can definitely see where you're coming from, and I do agree that this can be confusing at first. I've seen too many people already who approached -CURRENT or -STABLE as officially supported releases for production, while in fact they're not.

Anyway, hope that this can help you out.
 
See: if you go to the releases information page you'll see what I mean. It clearly mentions that 11.1 and 11.0 are supported releases, and that 10.3 is a legacy release.
Note that 11.0 will be EoL 3 months after the release date of 11.1 (we're currently in a 'transition' period to allow people some time to upgrade). Since 11.0 only the latest minor version will be supported (while respecting the 3 month transition period for the previous minor version). So when 11.2 comes out, 11.1 will be EoL three months later. The whole 11.x branch (which is what 11-STABLE is) will be supported for at least 5 years (until somewhere in 2021).

FreeBSD 10.3 is expected to be support to at least April 2018. Assuming 10.4 will be released in October 2017, and assuming it's the last of the 10.x branch (it likely is), it will be supported to at least October 2019.
 
Thanks to both. Once it's explained it's clear (which is precisely the problem, because you then can't see how ambiguous it is before it's explained).

I did what I would think most people would do if aware that they have about six months to EOL. I looked at the Release Information page, which listed the "Legacy" version I'm currently using and the two "Production" versions and referred me to the Security Information page for more information. There I saw the table and looked at the EOL dates to decide what to do next. Because the point releases give vague EOL based on the release of the next point, they look temporary, compared with the -STABLE (described on the Release Information page as "the latest snapshot", which doesn't sound like a developer build unless you first know what "snapshot" means in FreeBSD development). There is nothing I can see on either page explaining what -STABLE, -CURRENT or -RELEASE mean or how they should be used. For that I have to go to a third page, the Download page where, if I scroll down far enough I will eventually reach the heading: Development Snapshots. Only there are these terms explained, after a long table of defunct releases.

Of course, it's all very clear to the initiated, and now I know I won't make the mistake again, but a brief explanation on both pages would probably be helpful to those not in the know.

I'm glad I asked.
 
The published information is not at all easy to understand in terms of what one should install for production use to gain the longest stable supported system or know the best time to make a major version upgrade. Perhaps the answer to this should be a sticky so others can find it easily, as I suspect it must have been asked and answered many times on the forum in the past, but now be difficult to find unless one knows the exact keywords to bring it up in a sufficiently short list to be identified.

The sticky FAQ [freebsd.org menu bar: "Documentation" -> "FAQ" (1st option)] provides useful information: 1.9. What is the FreeBSD-STABLE concept?

Also: STABLE does not mean what you think it means.
 
A very crude ASCII schematic:
Code:
-------------------------------------------------------------------------------------> 12-CURRENT
\__ 10.0-RELEASE -> 10.0-RELEASE-p1....          \_ 11.0-RELEASE 
 \__ 10.1-RELEASE -> 10.1-RELEASE-p2.....         \_ 11.1-RELEASE
  \                                                \_ 11.2-RELEASE
   \                                                \
10-STABLE                                       11-STABLE
 
Back
Top