Page MenuHomePhabricator

Upgrade maps cluster to Node 4.2
Closed, ResolvedPublic

Description

To get in sync with the rest of the production and general improvements, we need to upgrade to 4.2 or later nodejs

We should probably do it one server at a time - e.g. migrate maps2004 first, test, and migrate the rest. At this point, any one server is capable of handling all of the maps traffic.

Older reasons:
I have began getting weird stack overflow errors in tilerator, but switching to node 0.12 seems to have fixed them. The warning is repeated hundreds of times, and than it crashes. I am unable to get any stacktrace to figure out what's going on. There has been suggestions on the web to try the code on later node to get a stacktrace. Regardless, node has recently released v4, and even though we cannot yet switch directly to it (i'm getting mapnik compilation errors), we should start planning the migration while the service is not heavily used.

(node) warning: Recursive process.nextTick detected. This will break in the next version of node. Please use setImmediate for recursive deferral.

node.js:204
    global.__defineGetter__('console', function() {
                                               ^
RangeError: Maximum call stack size exceeded

Event Timeline

Yurik raised the priority of this task from to Needs Triage.
Yurik updated the task description. (Show Details)
Yurik added a project: Maps-Sprint.
Yurik added subscribers: Yurik, akosiaris, MaxSem, GWicke.
Yurik renamed this task from Upgrade Node version to 12 or later on the maps cluster to Upgrade Node version to 0.12.7 on the maps cluster.Sep 14 2015, 3:47 AM
Yurik set Security to None.

We have iojs 2.5 available in our Jessie repos, which is an earlier version of the node 4 branch, and more up-to-date than node 0.12.

@GWicke, thx, what is required to switch a node service to another version?

switching to nodejs 0.12 can be problematic as we are now. . The way things are setup right now, upgrading just one service (running on jessie) to nodejs 0.12 is not really feasible. It means all nodejs services need to upgrade to nodejs 0.12 which involves a lot of testing, coordination, cooperation etc. Perhaps what @GWicke is proposing is an easier solution ?

Restricted Application added a subscriber: StudiesWorld. · View Herald Transcript
Deskana moved this task from Needs triage to On Sprint Board on the Discovery-ARCHIVED board.
Deskana subscribed.
Yurik renamed this task from Upgrade Node version to 0.12.7 on the maps cluster to Upgrade maps cluster to Node 4.2.Jan 21 2016, 6:56 PM
Yurik updated the task description. (Show Details)
Yurik removed a project: Services.

We should probably do it one server at a time - e.g. migrate maps2004 first, test, and migrate the rest.

Yup, exactly what I had in mind. Are the maps200x servers on Jessie already?

Also, @Yurik, please test the maps services against 4.2 and once you give us the green light, @akosiaris and I can schedule the actual migration.

Tested. Not working because the new npm install uses different dir structure for modules (it keeps all packages in the same dir instead of placing them underneath the package that requested it)

mobrovac assigned this task to akosiaris.

According to @akosiaris this has been completed. Yay! Resolving.