This may be a bit out of sync with the experts, but I delete ALL .cdx files in cases like this because I find that a simple rebuild still contains the original corruption. I have done this as part of a regular maintenance schedule in all of my end user systems (some 7000 odd). I have done this since the bad old days of Win 98 and FPW when it seemed corrupted indexes upset the Windows Stack? Whether this practice is technically correct or not it keeps my apps running smoothly.
To move a mountain start with the smallest stone