The cause of the corrupted data is not known but it did happen multiple times in a short period and only on an A330s.
Once Airbus knew what the problem was, they were able to detect and mitigate it with a software update. They didn’t fix the hardware.
The most that the ATSB was able to determine was that the data corruption was basically akin to a C++ reinterpret_cast of "altitude" as "angle of attack", causing the 37,000ft or so altitude to sporadically be read as a 50 degree AoA.
The issue was not definitively traced to cosmic rays or another root cause.