I found a issue in the Nokia 6600 MIDP implementation which doesn't seem to have been discussed previously. Hopefully, this could help somebody.

When creating a RecordEnumeration using RecordStore.enumerateRecords, the parameter keepUpdated is supposed to keep the RecordEnumeration updated:
Code:
RecordStore rs=RecordStore.openRecordStore("MyRecordStore",true);	
RecordEnumeration renum=rs.enumerateRecords(filter,null,true);
Thus, this code would delete each record in this enumeration:
Code:
while(renum.hasNextElement()){
	rs.deleteRecord(renum.nextRecordId());
}
Sadly, the 6600 doesn't seem to be able to keep renum updated, resulting in all records not being deleted if there are more than one. Here's a fix:
Code:
while(renum.hasNextElement()){
	rs.deleteRecord(renum.nextRecordId());
        renum.rebuild();
}
This will probably decrease effeciency but at least loop the records correctly.