我们的服务器上正在运行一个进程,该进程在文件中写入定义良好的消息。写入过程就像每行一条消息,然后是下一行的下一条消息。
但我们最近看到一行中有2条消息。在同一时间,我们看到当时磁盘空间已经完全充满。但后来空间可用,写入文件遵循预期的模式。
这条双重信息可以在一行中,因为之前的信息没有完全转储到文件中,当空间可用时,写入从最后一个位置开始,直到先前已完成写入?
我想知道的是,在这种情况下,任何写入任何文件的进程都会如何表现。文件处理程序如何在这种情况下表现出来?
答案 0 :(得分:0)
是的,就像你说的那样。
似乎非常明显。在某个时间点,没有足够的空间用于尾随换行符。然后打开空间,将来的消息再次附加到文件中。
当你的磁盘空间不足时,“文件处理程序”应该“行为”没有“方法”。如果您尝试将一个字节写入磁盘,并且该磁盘上没有足够的空间,则写入将失败。就这么简单。