Upgrading advice from 3.6.1 to 4.4.1

Hi.
I’m updating a 3.6.1 mongoDb server and the goal is to arrive to use the latest version (4.4.1).
I did create a server copy in order to experiment without fear to disrupt any service.
In that server I successfully updated from 3.6.1 to 3.6.20 and then from 3.6.20 to 4.0.20.
Do I have to escalate version by version or I can jump to the 4.4.1 ?
On some early tests trying to migrate to a 4.2.10 I did experience the error 14.
I did find lot of info and suggestions to fix the error 14 but nothing worked for me so far, so I erased the server and restored to 3.6.1 and then re-upgraded back to 4.0.20.
So I wonder what would be the best strategy to upgrade it.

Thanks
STeve

Hi @Stefano_Bodini

This is a reoccurring topic/question. Yes the best practice is to complete each incremental major release in full as per the release notes. You can search the forum for those topics.

If you have any follow up questions, post them here.

Hi Chris !
Thank you to confirm that, yes I did read the documentation and I planned the migration gradually but since I ended up with problems I was wondering.
Basically I have a server with mongodb standalone, CentOS 7. I’m not sure but I think it was created with Mongo 3.4 or even earlier.
When I started the migration the running version was the 3.6.1.
So I did update it to 3.6.20 and then to 4.0.20. So my latest stable running server is with the 4.0.20.
The goal is to end up with the 4.4.1. So I did update to the 4.2.1 and the server was crashing with Error 14.
I followed lot of suggestions I found to get rid of the Error 14 but nothing. Permissions correct, config file OK, etc.
Then I did notice some errors in the log that suggested some errors in the code, so I did update the server (usually is built with Chef without updates).
Apparently now I get rid of the Error 14, but I have an Error 62, data incompatibility.
So I’m working now to understand what is required to migrate from 4.0.20 to 4.2.1.
The compatibility flag (set up with the 3.6.20 was set to 3.6.

Thanks for any suggestion.

Stefano

Ok … finally !
The Error 14 was due because some system libraries of CentOS 7 were not updated.
After an update of the system the Error 14 error disappeared.
And the incompatibility error was because I didin’t realized to have to set the compatibility value on every step.
I have finally now the mongodb 4.4.1 happily running !

Thank you
Stefano

Good news @Stefano_Bodini,

Out of interest did you use a package manager or a manual installation method to upgrade the mongo binaries?

Yes, that is why I commented with the below point, more text strength required ?

Well, the system is supposedly handled by a Chef infrastructure (that I have to update) but in order to see what to do I’m doing manual tests on temporary servers, don’t want to risk to damage production databases and yes, I’m quite new to mongo admin (thus my naive questions).
What is “duh yeah” for you is not for me and honestly reading the documentation (not knowing) for the update was not really clear to me about the requested passages for example.
I though that the compatibility value update was needed only passing from 3.6 to 4.0 and after that, not changing the major version number, was ok.
My bad.
Thank you again to help me out.
Still lot of things to do before to be ready to update the real thing, hopefully I will not disturb anymore.
Thanks
Steve

Was it/you using yum/dnf , rpm -i or tarball for mongod installation?

You’re welcome. Disturb away, its what all the contributors are here for.

1 Like

Hi Chris
I do use yum for mongoDB installation, mainly because is what is used on the Chef infrastructure.
I normally set up the repository on the server (lot of security issues) for the specific series (3.6/4/0/4.2/4/4) and then stop, remove the old one, install the new one, start the new one but I didn’t post specifically about that on this group in the past, so I would say “no, it was not me” :slight_smile:

As usual handling mongoDb admin stuff is juts one of the thing one has to do so there is never time to stop everything and, say, take a full training with time to experiment.
Thanks for the kind words

Regards

Stefano

This topic was automatically closed 5 days after the last reply. New replies are no longer allowed.