I. Problems Found
Recently, I was notified by my maintenance colleagues that a software written in Java could not run normally. the following exceptions were found in logs:
Java. Lang. illegalstateexception: current state = flushed, new state = coding_end
Info | JVM 1 | 2010/11/26 00:01:25 | At java. NiO. charset. charsetencoder. throwillegalstateexception (charsetencoder. Java: 933) info | JVM 1 | 2010/11/26 00:01:25 | At java. NiO. charset. charsetencoder. encode (charsetencoder. Java: 529) info | JVM 1 | 2010/11/26 00:01:25 | At sun. NiO. cs. streamencoder $ charsetse. flushleftoverchar (streamencoder. Java: 358) info | JVM 1 | 2010/11/26 00:01:25 | At sun. NiO. cs. streamencoder $ charsetse. implclose (streamencoder. Java: 414) info | JVM 1 | 2010/11/26 00:01:25 | At sun. NiO. cs. streamencoder. Close (streamencoder. Java: 160) info | JVM 1 | 2010/11/26 00:01:25 | At java. Io. outputstreamwriter. Close (outputstreamwriter. Java: 222) II. Analysis Problem (1) The first problem is the coding problem. Run the software on the local machine and check that everything is normal. Check the Chinese characters in the source code, no abnormal characters are found, and the Chinese characters can be normally output on the local machine. (2) Is it a virus? The operating environment runs in the LAN, and there are strict management regulations and anti-virus software checks. This possibility can be basically ruled out. (3) Check the hard disk partition where the software is located and find that the remaining space in the partition is almost zero. In this case, the software operation needs to record the running information to the log file. Because the abnormal log information is not cleared in time, the disk space is full and the software cannot write logs, thus causing the software to fail to start. 3. After clearing useless log files, the software can start properly, record log information, and solve the problem. 4. After finding out the problem, I found a lot of information on the Internet and found that there was a small amount of information. I did not expect it to be such a "small" problem. After solving this problem, I feel that the software development process requires not only learning new technologies and methods, but also accumulating experience in constantly solving these "small" problems, in this way, we can improve our capabilities and solve the "big" problem.