I was experimenting today with some append operations and, in my curiosity, ran this (where file1.txt was non-empty and file2.txt was empty):
$ cat file1.txt >> file2.txt >> file1.txt
When I saw it taking a while, I hit Ctrl+C to end it. By then, file1.txt was hundreds of MB in size.
Switching the file names doesn't produce the same effect; only when the files are in this order does the infinite redirection happen. What exactly is going on that causes this?