executeOutsideTx(new OCallable<Object, OrientBaseGraph>() {
@Override
public Object call(OrientBaseGraph g) {
try {
synchronized (manualIndexLock) {
final OIndexManager indexManager = getRawGraph().getMetadata().getIndexManager();
final OIndex index = indexManager.getIndex(indexName);
final String recordMapIndexName = index.getConfiguration().field(OrientIndex.CONFIG_RECORD_MAP_NAME);
indexManager.dropIndex(indexName);
if (recordMapIndexName != null)
getRawGraph().getMetadata().getIndexManager().dropIndex(recordMapIndexName);
saveIndexConfiguration();
return null;