()
| 462 | } |
| 463 | |
| 464 | func (d *Driver) loopCleanRelayDir() { |
| 465 | cleanDataDir := func() { |
| 466 | files, err := ioutil.ReadDir(path.Join(d.config.DataDir, "binlog")) |
| 467 | if err != nil { |
| 468 | d.logger.Error("read dir failed", "dataDir", d.config.DataDir, "err", err) |
| 469 | return |
| 470 | } |
| 471 | |
| 472 | for _, file := range files { |
| 473 | _, exist, err := d.storeManager.GetNatsIfExist(file.Name()) |
| 474 | if exist || err != nil { |
| 475 | continue |
| 476 | } |
| 477 | if err := os.RemoveAll(path.Join(d.config.DataDir, "binlog", file.Name())); err != nil { |
| 478 | d.logger.Warn("remove dir failed", "err", err) |
| 479 | } |
| 480 | } |
| 481 | } |
| 482 | |
| 483 | cleanDuration := 12 * time.Hour |
| 484 | cleanDelay := time.NewTimer(cleanDuration) |
| 485 | defer cleanDelay.Stop() |
| 486 | for { |
| 487 | cleanDelay.Reset(cleanDuration) |
| 488 | <-cleanDelay.C |
| 489 | cleanDataDir() |
| 490 | } |
| 491 | } |
| 492 | |
| 493 | func (d *Driver) TaskConfigSchema() (*hclspec.Spec, error) { |
| 494 | return taskConfigSpec, nil |
no test coverage detected