Essay
Notes From a Two A.M. Rollback
凌晨两点回滚手记

The deploy window opens at one in the morning, because that is when the fewest people are awake to notice us. I sit in the corridor on the eleventh floor with a paper cup of chai that has gone cold, watching the logs scroll. Outside, the glass reflects the city back at itself. Somewhere below, a train pulls out toward the southern end of the line with almost nobody in it.
The queue that would not drain
By two, the numbers on my screen had stopped making sense in the way numbers do when you have stared at them too long. One service was eating messages faster than the other could write them. My teammate Rohan said, quietly, that he had seen this before, in a system he no longer worked on. We rolled back. Nobody clapped. The four of us just sat there, exhaling.
A rollback is not a failure; it is the sentence you rewrite when the first draft was wrong.
The rollback took ninety seconds. The explaining took an hour. I wrote the timeline into a document nobody would read on Monday, and halfway through it found that I had made a small assumption about time zones that had been wrong since March. That is the part I like about this work: the mistake is always older and quieter than the night it finally speaks.
Walking home through Dadar
Rohan shared a cab with me as far as Dadar, and then I walked. The vegetable market was already waking: crates of tomatoes, a man hosing down the pavement, a dog asleep under a tempo. At three in the morning Mumbai is not empty, it is only between shifts. I bought nothing. I just wanted to be out of the building and inside something that did not need monitoring.
At home, my mother's masala dabba was still on the counter where I had left it. I made tea badly, with too much ginger, and drank it standing at the window. Then I slept for three hours and dreamed about queues. In the morning I went back and fixed the time zone. That was the whole drama of it: a night, a rollback, one small wrong number, corrected.
Ninety seconds to fix the system, an hour to explain yourself to it.
I still keep the timeline document open on my desk. Not out of pride, and not as a warning. It is useful to remember that the calmest version of a night like that is the one written afterwards, by someone who has already slept and already knows how the story ends. Next time it will be somebody else's turn to watch the logs.
中文译文
上线窗口定在凌晨一点,因为那个时间醒着的人最少,注意不到我们。我坐在十一楼走廊里,手里一杯凉透的茶,看着日志往下滚。玻璃幕墙把城市映回它自己。楼底下,一列几乎空着的火车正朝线路南端开出去。
那条怎么也排不空的队列
到两点,屏幕上的数字开始失去意义——盯着看太久之后,数字都会那样。一个服务吞消息的速度,比另一个写进去的速度快。同事罗汉轻声说,他在以前待过的一个系统里见过这种情况。我们回滚了。没有人鼓掌。四个人只是坐在那儿,长长地吐气。
回滚不是失败,只是初稿写错时,你重写的那一句。
回滚用了九十秒,解释用了一小时。我把时间线写进一份周一没人会看的文档,写到一半才发现,自己对某个时区做的一个小小假设,从三月起就是错的。我喜欢这份工作,恰恰因为这一点:错误永远比它终于开口的那个夜晚更早,也更安静。
穿过达达尔走回家
罗汉和我拼车到过达达尔,然后我下车走路。菜市场已经醒了:一筐筐番茄,有人在冲地面,一条狗睡在三轮车底下。凌晨三点的孟买不是空的,只是刚好在两班之间。我什么都没买。我只是想从楼里出来,走进一个不需要监控的东西里。
回到家,母亲的玛莎拉香料盒还搁在台面上,和我出门时一样。我煮了茶,姜放多了,站在窗边喝完。然后睡了三小时,梦见队列。早上回去把时区改了。整场风波就是这样:一个夜晚,一次回滚,一个错的数字,改回来。
九十秒修好的是系统,一小时讲不清楚的是你自己。
那份时间线文档我还开在桌上。不是为了自豪,也不是当警示。只是想着:这样的夜里,最平静的版本,永远是事后由已经睡过一觉、已经知道结局的人写下的。下一次,轮到别人守着日志了。






