The seven most expensive Bugs in code history

2022-03-14 09:51:58
ZenTao ALM
Original 5461
Summary : A small technical error in an algorithm or program can cost millions of dollars. Here's a look at seven of the most expensive bugs in history.

A small technical error in an algorithm or program can cost millions of dollars. Here's a look at seven of the most expensive bugs in history.

NASA's Mars Climate Orbiter: $193 million

Source:graph 1

In 1999, NASA's Mars Climate Orbiter entered an orbit too low, causing the spacecraft to burn up in the atmosphere. The failure was ultimately traced to a conversion error -- the British pound second unit was not converted to the standard metric Newton second.


NASA's Mars Orbiter is the second probe in its Mars Surveyor program, including the Mars Global Surveyor, launched in November 1996, and the Mars Polar Lander, launched in January 1999. They are designed to arrive at roughly the same time to conduct experiments on Mars' surface, climate, and atmosphere. It was due to reach orbit on September 23, 1999. NASA scientists hope that once the spacecraft reaches Mars, it will help them reconstruct climate history and find signs of water on the surface. After this mission, it will also serve as a communications relay for future missions to Mars.


On September 23, 1999, the Mars Climate Orbiter began its planned orbital burn. The spacecraft was supposed to re-establish contact after passing Mars and then send a signal, but unfortunately, the spacecraft did not receive any signal. During TCM-4 and its week in orbit, the navigation team thought the probe could be much lower than expected, somewhere between 150 and 170 kilometers.


Mars climate surveyor mission failure is the main reason for the artificial factors. The Martian climate surveyor on flying system software using imperial units pounds of force calculation of propeller, and ground personnel input direction correction quantity and use the metric unit Newton propeller parameters, lead to the height of the probe into the atmosphere, eventually collapsed fracture.

Mariner 1: $18.5 million

Source:graph 2

The Mariner 1 incident, also known as the most expensive hyphen in human history, was another NASA misstep that, though small, cost the company millions of dollars.


The Mariner mission included a series of unmanned spacecraft designed to explore Mars, Venus, and Mercury. The project claimed several firsts, including the first intergalactic flyby, planetary probe, and gravity accelerated spacecraft.


Mariner 1 launched at 9:21 a.m. on July 22, 1962, less than five minutes before the mission was aborted. One of the most historic flights in human history crashed to earth because of a small error in mathematical code.


"The boosters performed satisfactorily until the range safety officer detected the unplanned yaw lift," NASA quoted on its website. "But a misapplication of the guidance command resulted in an inability to turn and would have caused the spacecraft to crash, possibly into North Atlantic shipping lanes or an inhabited area, and a range safety officer then ordered a destructive abort."


A few days after the crash, the New York Times published an article explaining the cause of the crash. It said the error resulted from "missing a hyphen in some mathematical data." A NASA programmer allegedly missed the symbol while feeding "much-coded information" into the computer system.


A few days later, NASA official Richard Morrison presented the case for destroying the rocket to Congress and stressed the importance of minor omissions: "The hyphen prompted the spacecraft to ignore data from its computers until radar contact could be restored. When the hyphen is omitted, false information enters the spacecraft control system. In that case, the computer turned the rocket to the left, nose down, and the rocket obeyed and crashed."

Ariane flight V88 No. 501: 370 million dollars

Source:graph 3

On June 4, 1996, the unmanned Ariane 5 rocket launched by the European Space Agency exploded just 40 seconds after liftoff from Kourou, French Guiana. The rocket is on its first flight after a decade of development that cost millions of dollars.


The commission of Inquiry investigated the cause of the explosion and issued a report within two weeks. It turned out that the failure was due to a software error in the inertial reference system. The software installed on Ariane 5 was originally developed for Ariane 4. Ariane 5 has a more powerful engine, which leads to errors that were impossible in previous versions.


64-bit floating-point numbers related to the rocket's horizontal speed relative to the platform are converted to 16-bit signed integers. The number is more significant than 32767, the largest integer stored in a 16-bit signed integer, so the conversion fails. So, at 39 seconds, the rocket starts to collapse and self-destruct under aerodynamic force.

Pentium processor bug: $475 million

Source:graph 4

The Pentium FDIV vulnerability is the most famous, or perhaps most notorious, Intel microprocessor vulnerability. It was meant to be faster and more accurate but ended up being bugged and causing errors in the lookup tables that were part of Intel's SRT algorithm.


To increase the execution speed of floating-point scalar code by a factor of 3 and vector code by a factor of 5, Compared to the 486DX chip, Intel decided to use the SRT algorithm, which can generate two quotient bits per clock cycle, as opposed to the traditional 486 shift and subtraction algorithm, which generates only one quotient bit per cycle. This SRT algorithm uses lookup tables to compute the intermediaries required for floating-point division. Intel's lookup table consists of 1066 table entries, of which five were not downloaded to the programmable Logic Array (PLA) due to programming errors. When a floating-point unit (FPU) accesses any of these five units, it (FPU) takes zero instead of +2, which should be included in the "missing" unit.


In the worst case, the incidence of this error could be as high as the fourth significant digit of the decimal number, but the probability of this happening is one in 360 billion. Errors are most common in the ninth or tenth decimal digit, with a one in nine billion chance of occurring. Disgruntled customers, however, believe that every user should get working hardware and demand a replacement.

Morris Worm: $100 million

Source:graph 5

Would you believe that a student trying to solve a problem accidentally created malware that caused $100 million worth of damage to repair the damage? Well, that's precisely what happened on November 2, 1988. Robert Tappan Morris, a graduate student at Cornell University, accidentally created a malware program. At first, it was a harmless experiment in the program, but there was a minor bug in the code. The malware began to spread quickly and later destroyed thousands of computers.


Robert Morris was charged with cybercrime and fined $10,000. However, the malware resulted in a total cost of $100 million to fix the affected computers.


Morris' lawyers claimed the worm helped improve network security because it helped develop antivirus software and made users aware of such malware in the future. Morris later became a co-founder of Y Combinator. He's an associate professor at MIT. Floppy disk with malware source code stored at Boston University. Let's hope it doesn't mutate.


However, what has a more significant and more far-reaching impact than the event is that hackers have turned black since then, the hacker ethics have lost control, and the hacker tradition has begun to break down. The public's impression of hackers can never be restored. And computer viruses have since gone mainstream.

Knight bankruptcy: $440 million

Source:graph 6

What if a critical stakeholder in the US stock market started buying high and selling low? Doesn't sound like a good trade strategy. That's exactly what happened to Knight, which nearly bankrupted them.


On the morning of August 1, 2012, any CEO's nightmare occurred. The building that took 17 years to build almost collapsed in a matter of hours. Some new trading software has a bug that only activates when the New York Stock Exchange opens for the day. The faulty software sent Knight on an acquisition spree, and soon it was buying shares in about 150 different companies worth about $7 billion in the first hour of trading.


On the morning of August 1, 2012, what would be any CEO's nightmare happened: something that had taken 17 years to build almost collapsed in a matter of hours. Some of the new trading software had a bug only activated when the New York Stock Exchange opened that day. The faulty software sent Knight on an acquisition spree, and soon it was buying shares in about 150 different companies worth about $7 billion in the first hour of trading.


Knight tried to cancel the deal, but Mary Schapiro, chairman of the Securities and Exchange Commission, refused. Except for six stocks whose trades were withdrawn, Knight's other buying spree did not meet the cancellation threshold -- driving up the price of the stocks it bought by more than 30 percent. In other cases, the deal stands.


That was terrible news for Knight, which had no choice but to sell the shares it had bought once it became clear that the deal would take place. Just as the frenzied buying of the morning pushed up the prices of these stocks, a massive market sell-off is likely to force prices down, possibly to the point where Knight can't recoup losses.


Goldman Sachs stepped in and bought all of Knight's unwanted positions for $440m.

Y2k: $500 billion

What harm can a single digit do? Back in 1999, it cost $500 billion. The Y2K bug, also known as the Millennium bug, is a computer bug. Because only two decimal digits represent the years, when the system does date processing across centuries (such as after December 31, 1999), the wrong results can result in all kinds of system dysfunction and even crashes.


When writing complex computer programs in the 1960s and 1980s, computer engineers used two-digit codes to represent years. "19" is excluded. It's not 1970, and it's 70. Computer engineers shortened the date because data storage in computers was expensive and took up a lot of space in those days.


As 2000 approached, computer programmers realized that computers might not interpret 00 as 2000 but as 1900. All activities programmed on a daily or yearly basis are corrupted or defective. When December 31, 1999, becomes January 1, 2000, the computer interprets December 31, 1999, as of January 1, 1900.


Banks and other financial institutions that calculate interest rates daily face real problems. The computer will calculate the interest rate minus 100 years, not one day. The change will also affect power plants, transportation, and many other sectors.


The U.S. government prepared for the event by passing the Information and Readiness Disclosure Act of 2000 and creating a Presidential commission made up of senior government officials and officials from agencies such as the Federal Emergency Management Agency (FEMA) to oversee the work of private companies preparing systems for the event. Gartner, the research firm, estimates the global cost of avoiding the Y2K bug could be as high as $600bn.


With these seven lessons in mind, it is important to test your software initially to avoid the high cost of breaking and fixing it.

Write a Comment
Comment will be posted after it is reviewed.