- This article is about the rackmounting rails attached to the servers. If you're interested in the software called "Ruby on Rails" that runs the API, see The Rails Port
We've learned through bitter experience that the rails attached to many of the servers jam. During the August 2009 cabinet rebuild we found out why.
What are the catches?
The catches are little plastic mechanisms that stop the servers from sliding the whole way out of the rack when you pull them forwards. To remove the server from its rails, you have to flick the catches on either side to release them. The rails on each side are usually identical, therefore you flick one side up and one side down.
The construction is pretty simple, as shown in the image below. The part shown is attached to the server, and the green dot shows where a part of the fixed rail (the "stopper") juts out. When you push the server in, the black catch pivots, compressing the "spring" and allowing the green dot to pass. Pulling it out again, and the dot would be caught on the catch. Flicking the lever as shown by the arrow allows it to pass.
So what goes wrong? Well, if you imagine the green dot being at the bottom, when you push the server in the dot pushes the spring arm out of the way, so pushing in works fine. When you pull it back out, it gets stuck between the spring arm and the lever in that v-shaped gap. The lever can't rotate enough to pull the spring arm away from the side, and so it's stuck - there's no way for the dot to get past the catch. And why would the green dot be at the other side? Well, it turns out we have two types of rails.
The two types of rails
The differences are hard to spot between the two types of rails, and if anyone actually knew about them then that knowledge has been lost in the depths of time and only found out again recently.
Look carefully at the photo below. The catches are mirror images of each other, with one subtle difference - the end of the lever on the left is rounded, and is straight on one on the right.
Similarly, when you look at the rails, the plastic stoppers are different. The stoppers do two things - stop the bearing races from falling out, and act as the green square in the diagram above. The way they fit into the metalwork is different - this picture shows rounded on the left, and straight on the right.
And if you look at the rails end-on, you can see the stoppers are mirror images.
Thankfully, it's very simple how things work.
- The server bars with the rounded lever ends go with the rails with the rounded stoppers
- The server bars with the straight level end go with the rails with the straight stoppers
There's always one more thing
Finally, it's worth noting that the straight stoppers can easily be put in back-to-front (unlike the rounded stoppers which only fit one-way). This is the case currently (Aug 2009) with dev, which although has straight lever arms and straight stoppers is still jammed on one side since the stopper is in back-to-front.