浏览代码

Fix incorrect record count in the importer

Kailash Nadh 5 年之前
父节点
当前提交
b45a2a0f89
共有 2 个文件被更改,包括 8 次插入2 次删除
  1. 1 1
      frontend/src/views/Import.vue
  2. 7 1
      internal/subimporter/importer.go

+ 1 - 1
frontend/src/views/Import.vue

@@ -284,7 +284,7 @@ export default Vue.extend({
 
     // Import progress bar value.
     progress() {
-      if (!this.status) {
+      if (!this.status || !this.status.total > 0) {
         return 0;
       }
       return Math.ceil((this.status.imported / this.status.total) * 100);

+ 7 - 1
internal/subimporter/importer.go

@@ -432,8 +432,14 @@ func (s *Session) LoadCSV(srcPath string, delim rune) error {
 		s.log.Printf("error counting lines in '%s': '%v'", srcPath, err)
 		return err
 	}
+
+	if numLines == 0 {
+		return errors.New("empty file")
+	}
+
 	s.im.Lock()
-	s.im.status.Total = numLines
+	// Exclude the header from count.
+	s.im.status.Total = numLines - 1
 	s.im.Unlock()
 
 	// Rewind, now that we've done a linecount on the same handler.