Skip to content

Commit 88db641

Browse files
committed
Fix progress calculation
1 parent 8caa629 commit 88db641

4 files changed

Lines changed: 36 additions & 6 deletions

File tree

src/main/java/net/explorviz/code/analysis/handler/CommitReportHandler.java

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -119,6 +119,10 @@ public void setAnalysisFileCount(final int analysisFileCount) {
119119
builder.setAnalysisFileCount(analysisFileCount);
120120
}
121121

122+
public void setMetadataOnly(final boolean metadataOnly) {
123+
builder.setMetadataOnly(metadataOnly);
124+
}
125+
122126
/**
123127
* Returns the commit data. * * @return commit data object
124128
*/

src/main/java/net/explorviz/code/analysis/service/AnalysisProgressState.java

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,7 @@
11
package net.explorviz.code.analysis.service;
22

3+
import com.fasterxml.jackson.annotation.JsonProperty;
4+
35
/**
46
* In-memory representation of analysis state.
57
*/
@@ -9,5 +11,5 @@ public record AnalysisProgressState(
911
int analyzedCommits,
1012
int totalFiles,
1113
int analyzedFiles,
12-
String currentAnalysingFile) {
14+
@JsonProperty("currentAnalyzingFile") String currentAnalysingFile) {
1315
}

src/main/java/net/explorviz/code/analysis/service/AnalysisService.java

Lines changed: 26 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -298,10 +298,6 @@ public void analyzeAndSendRepo(final AnalysisConfig config, final DataExporter e
298298
.addArgument(descriptorModifiedList.size())
299299
.log("Files added: {}, files modified: {}");
300300

301-
analysisStatusService.setCurrentCommitFiles(
302-
config.landscapeToken(),
303-
descriptorAddedList.size() + descriptorModifiedList.size());
304-
305301
final boolean retransmitAllFiles =
306302
hasGapSinceLastFullAnalysis(lastFullyAnalyzedCommitHash, commit);
307303
final List<FileDescriptor> unchangedFiles =
@@ -324,6 +320,10 @@ public void analyzeAndSendRepo(final AnalysisConfig config, final DataExporter e
324320
filesToAnalyze.addAll(descriptorModifiedList);
325321
filesToAnalyze.addAll(unchangedFiles);
326322

323+
analysisStatusService.setCurrentCommitFiles(
324+
config.landscapeToken(),
325+
filesToAnalyze.size());
326+
327327
if (filesToAnalyze.isEmpty()) {
328328
createCommitReport(
329329
config,
@@ -806,7 +806,8 @@ private void persistMetadataOnlyCommit(final AnalysisConfig config, final RevCom
806806
Collections.emptyList(),
807807
Collections.emptyList(),
808808
Collections.emptyList(),
809-
tagsByCommitId);
809+
tagsByCommitId,
810+
true);
810811
}
811812

812813
private void createCommitReport(final AnalysisConfig config, final RevCommit commit,
@@ -815,6 +816,25 @@ private void createCommitReport(final AnalysisConfig config, final RevCommit com
815816
final List<FileDescriptor> deletedFiles, final List<FileDescriptor> unchangedFiles,
816817
final Map<ObjectId, List<String>> tagsByCommitId)
817818
throws NotFoundException, IOException, GitAPIException {
819+
createCommitReport(
820+
config,
821+
commit,
822+
exporter,
823+
branchName,
824+
addedFiles,
825+
modifiedFiles,
826+
deletedFiles,
827+
unchangedFiles,
828+
tagsByCommitId,
829+
false);
830+
}
831+
832+
private void createCommitReport(final AnalysisConfig config, final RevCommit commit,
833+
final DataExporter exporter, final String branchName,
834+
final List<FileDescriptor> addedFiles, final List<FileDescriptor> modifiedFiles,
835+
final List<FileDescriptor> deletedFiles, final List<FileDescriptor> unchangedFiles,
836+
final Map<ObjectId, List<String>> tagsByCommitId, final boolean metadataOnly)
837+
throws NotFoundException, IOException, GitAPIException {
818838
final CommitReportHandler commitReportHandler = new CommitReportHandler();
819839

820840
commitReportHandler.init(
@@ -824,6 +844,7 @@ private void createCommitReport(final AnalysisConfig config, final RevCommit com
824844

825845
commitReportHandler.setAnalysisFileCount(
826846
addedFiles.size() + modifiedFiles.size() + unchangedFiles.size());
847+
commitReportHandler.setMetadataOnly(metadataOnly);
827848

828849
commitReportHandler.setAuthorDate(Timestamp.newBuilder()
829850
.setSeconds(commit.getAuthorIdent().getWhen().getTime() / 1000).build());

src/main/proto/commit.proto

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -36,6 +36,9 @@ message CommitData {
3636

3737
// All git parent commits, oldest-to-newest analysis order is derived from these links.
3838
repeated string parent_commit_ids = 15;
39+
40+
// When true, only commit metadata is persisted; file linking and metric accumulation are skipped.
41+
bool metadata_only = 16;
3942
}
4043

4144
message FileIdentifier {

0 commit comments

Comments
 (0)