/** * updates segment status and modificaton time details * * @param loadMetadata */ public static void updateSegmentMetadataDetails(LoadMetadataDetails loadMetadata) { // update status only if the segment is not marked for delete if (SegmentStatus.MARKED_FOR_DELETE != loadMetadata.getSegmentStatus()) { loadMetadata.setSegmentStatus(SegmentStatus.MARKED_FOR_DELETE); loadMetadata.setModificationOrdeletionTimesStamp(CarbonUpdateUtil.readCurrentTime()); } }
private void prepareLoadMetadata() { int loadCount = 0; Map<String, List<String>> snapshotMap = this.readCommittedIndexFileSnapShot.getSegmentIndexFileMap(); LoadMetadataDetails[] loadMetadataDetailsArray = new LoadMetadataDetails[snapshotMap.size()]; String segmentID; for (Map.Entry<String, List<String>> entry : snapshotMap.entrySet()) { segmentID = entry.getKey(); LoadMetadataDetails loadMetadataDetails = new LoadMetadataDetails(); long timeSet; try { timeSet = Long.parseLong(segmentID); } catch (NumberFormatException nu) { timeSet = 0; } loadMetadataDetails.setLoadEndTime(timeSet); loadMetadataDetails.setLoadStartTime(timeSet); loadMetadataDetails.setSegmentStatus(SegmentStatus.SUCCESS); loadMetadataDetails.setLoadName(segmentID); loadMetadataDetailsArray[loadCount++] = loadMetadataDetails; } this.loadMetadataDetails = loadMetadataDetailsArray; }
} else if (SegmentStatus.MARKED_FOR_DELETE != segmentStatus) { loadFound = true; loadMetadata.setSegmentStatus(SegmentStatus.MARKED_FOR_DELETE); loadMetadata.setModificationOrdeletionTimesStamp(CarbonUpdateUtil.readCurrentTime()); LOG.info("Segment ID " + loadId + " Marked for Delete");
/** * Method to create new entry for load in table status file * * @param loadMetadataDetails * @param loadStatus * @param loadStartTime * @param addLoadEndTime */ public static void populateNewLoadMetaEntry(LoadMetadataDetails loadMetadataDetails, SegmentStatus loadStatus, long loadStartTime, boolean addLoadEndTime) { if (addLoadEndTime) { long loadEndDate = CarbonUpdateUtil.readCurrentTime(); loadMetadataDetails.setLoadEndTime(loadEndDate); } loadMetadataDetails.setSegmentStatus(loadStatus); loadMetadataDetails.setLoadStartTime(loadStartTime); }
LoadMetadataDetails loadMetadataDetails = new LoadMetadataDetails(); loadMetadataDetails.setLoadEndTime(System.currentTimeMillis()); loadMetadataDetails.setSegmentStatus(SegmentStatus.SUCCESS); loadMetadataDetails.setLoadName(String.valueOf(0)); loadMetadataDetails.setLoadStartTime(loadMetadataDetails.getTimeStamp(readCurrentTime()));
if (segmentId.equals(detail.getLoadName())) { detail.setLoadEndTime(System.currentTimeMillis()); detail.setSegmentStatus(SegmentStatus.STREAMING_FINISH); break; newDetail.setFileFormat(FileFormat.ROW_V1); newDetail.setLoadStartTime(System.currentTimeMillis()); newDetail.setSegmentStatus(SegmentStatus.STREAMING);
if (SegmentStatus.STREAMING == detail.getSegmentStatus()) { detail.setLoadEndTime(System.currentTimeMillis()); detail.setSegmentStatus(SegmentStatus.STREAMING_FINISH); updated = true;
return false; loadDetail.setSegmentStatus(SegmentStatus.COMPACTED); loadDetail.setModificationOrdeletionTimesStamp(modificationOrDeletionTimeStamp); loadDetail.setMergedLoadName(mergedLoadNumber); loadMetadataDetails.setSegmentStatus(SegmentStatus.SUCCESS); long loadEnddate = CarbonUpdateUtil.readCurrentTime(); loadMetadataDetails.setLoadEndTime(loadEnddate);
for (LoadMetadataDetails entry : listOfLoadFolderDetails) { if (entry.getSegmentStatus() != SegmentStatus.INSERT_OVERWRITE_IN_PROGRESS) { entry.setSegmentStatus(SegmentStatus.MARKED_FOR_DELETE); detail.setSegmentStatus(SegmentStatus.MARKED_FOR_DELETE); } else if (segmentFilesTobeUpdated .contains(Segment.toSegment(detail.getLoadName(), null))) {
loadMetadata.setSegmentStatus(SegmentStatus.MARKED_FOR_DELETE); loadMetadata.setModificationOrdeletionTimesStamp(Long.parseLong(updatedTimeStamp));
} else { if (segmentSize == 0) { newMetaEntry.setSegmentStatus(SegmentStatus.MARKED_FOR_DELETE);
newDetail.setFileFormat(FileFormat.ROW_V1); newDetail.setLoadStartTime(System.currentTimeMillis()); newDetail.setSegmentStatus(SegmentStatus.STREAMING);