In my opinion, already the allocation is wrong:
indexes[i] = new std::vector<int>[8];
When I understand your code correctly, you want each cell indexes[i] to point to a std::vector<int>. So it should be:
indexes[i] = new std::vector<int>;
And of course, CPallini is right in that you should apply array brackets when finally deleting
indexes
. But this is not the problem that threw the assertion.