Я мигрирую с ODB 2.2.29 на 3.0.1 и обнаружил ошибку, которую не смог понять.У меня есть класс под названием «EdgeAttrib».Класс еще не существует в БД.Теперь рассмотрим этот код:
let exist = select from (select expand(classes) from metadata:schema) where name = 'EdgeAttrib';
if ($exist.size()>0) {
delete vertex EdgeAttrib;
drop class EdgeAttrib;
}
хорошо работает в 2.2.29 и не работает в 3.0.1.Более того, тот же код для другого класса работает нормально.Когда я запускаю его, он выдает:
com.orientechnologies.orient.core.exception.OCommandExecutionException: Class not found: EdgeAttrib DB name="Test"
Это происходит при попытке выполнить строку «delete vertex», но класс не существует, поэтому он никогда не должен запускать эту строку.Я запускаю этот код в ODB Studio.