Файловая база геоданных и блокировка

Если вы единственный пользователь, работающий с набором данных файловой базы геоданных и используете его только в одном процессе, вы можете свободно редактировать и изменять его свойства. Вы также можете удалять, сжимать и отменять сжатие набора данных.

Однако ArcGIS не позволит вам выполнять эти операции в случае, если другой процесс уже работает с данными – это может быть процесс, расположенный на вашем компьютере, другом компьютере или сервис. По окончании процесса вы снова сможете выполнять эти операции. К примеру, если у вас есть класс объектов, отображенный на карте в ArcMap или ArcGIS Pro, и вы пытаетесь удалить один и тот же класс объектов из базы геоданных, вы получите следующее сообщение:

Failed to delete selected object(s)
Cannot acquire a schema lock because of an existing lock.

если вы закроете карту и попытаетесь снова, вы уже сможете удалить класс объектов, обеспечив тем самым, что другие процессы не работают с данными.

Получив доступ к набору данных, процесс его блокирует, не давая другим процессам его изменять. Доступ к набору данных блокирует не только этот набор данных, но и следующие дополнительные связанные наборы данных:

  • Доступ к классу пространственных объектов в наборе классов блокирует все остальные классы в этом наборе.
  • Блокировки применяются также для объектов обоих сторон класса отношений. То есть, если два отдельных класса пространственных объектов связаны посредством класса отношений и один из них задействован в процессе, блокируются оба класса.

Для сохранения блокировки наборов данных ArcGIS размещает файлы блокировок в папку файловой базы геоданных. Когда процесс прекращается, связанные с ним файлы блокировки автоматически удаляются. В некоторых случаях, например, когда процесс аварийно заканчивается, файлы блокировок могут оставаться в папке базы геоданных. Эти файлы блокировок будут удалены ArcGIS в будущих сеансах при создании новых блокировок. Они также удаляются при запуске вами инструмента геообработки Уплотнить либо при копировании и вставке объектов в ArcGIS. В промежутке между этими событиями эти файлы блокировки не блокируют данные.

Блокировки очень важны для управления файлами и процессами. Но иногда кажется, что они только мешают. Если у вас не получается редактировать набор данных или его свойства, либо что-то удалить, сжать или отменить сжатие, и вы получаете сообщения об ошибках, причины могут быть следующие:

  • Вы работаете с данными одновременно в двух приложениях или сервисах. Закройте одно из приложений либо остановите сервис, чтобы выполнить необходимую вам операцию.
  • Другой процесс на вашем компьютере всё ещё удерживает данные, так как не был закрыт правильным образом. Например, если приложение хотя и не запущено, оно тем не менее некорректно закрыто и поэтому может все еще блокировать данные. Откройте Диспетчер задач и закройте там подвисшие процессы.