4
이 필요하지 않은 많은 수의 개체가 데이터 저장소에서 삭제되었습니다 (약 7000 개). 해당 객체 각각에는 String (blob 키)으로 참조되는 blob이 있습니다.
지금까지 짐작 하셨겠지만, 나는 그 얼룩을 삭제하는 것을 잊었습니다. 이제 참조 할 권한이 없지만 삭제하려고합니다. 나는 그렇게 할 방법을 찾을 수없는 것 같습니다. 도움이 될 것입니다.
업데이트 해결책을 찾았습니다.appengine blobstore에서 고아 방울 지우기
DatastoreService datastore = DatastoreServiceFactory.getDatastoreService();
BlobstoreService blobstoreService = BlobstoreServiceFactory.getBlobstoreService();
List<BlobInfo> blobsToCheck = new LinkedList<BlobInfo>();
Iterator<BlobInfo> iterator = null;
if(afterBlobKey == null){
iterator = new BlobInfoFactory().queryBlobInfos();
}else{
iterator = new BlobInfoFactory().queryBlobInfosAfter(new BlobKey(afterBlobKey));
}
while(iterator.hasNext()){
blobsToCheck.add(iterator.next());
}
//Check those blobs if they have reference in datastore
//Delete using blobstoreService.delete(blobKey);
가능한 중복 [이 가능 찾을 앱 엔진 Blob 저장소에서 분리 된 모양을 삭제할 수 있나요?] (http://stackoverflow.com/questions/2935980/is-it-possible-to-find-and -delete-orphaned-blob-in-the-app-engine-blobstore) – systempuntoout
@systempuntoout 감사합니다. 자바 솔루션을 찾고 있었지만, 문제를 해결하고 내 문제를 해결하는 데 도움이되었습니다. – Gaurav
도움이 되니 기쁩니다. 자바 솔루션을 승인 된 것으로 표시하는 답변으로 게시 할 수 있습니다. 그것은 다른 사람들에게 도움이 될 것입니다. – systempuntoout