From 4eab2b4cd3237b63f406d12beb146d2408d81638 Mon Sep 17 00:00:00 2001 From: ened Date: Thu, 14 Nov 2024 21:42:49 +0900 Subject: [PATCH] Validate first key item and skip to insert items --- KissMeConsole/Sources/KissConsole+DB.swift | 11 +++++++++++ libraries/KissMeme | 2 +- 2 files changed, 12 insertions(+), 1 deletion(-) diff --git a/KissMeConsole/Sources/KissConsole+DB.swift b/KissMeConsole/Sources/KissConsole+DB.swift index 7e94696..ed5dcf3 100644 --- a/KissMeConsole/Sources/KissConsole+DB.swift +++ b/KissMeConsole/Sources/KissConsole+DB.swift @@ -299,6 +299,7 @@ extension KissConsole { let db = try KissDB(directory: yearDbPath) try db.begin() + var isFirstValidated = false for candle in candles { if trimAfterMarket { guard candle.isValidInMarketTime else { @@ -306,6 +307,16 @@ extension KissConsole { } } let candleData = try CandleData(candle: candle) + + if !isFirstValidated { + try db.selectData(key: candleData.key, into: { dataItem -> Bool in + if dataItem.key == candleData.key { + isFirstValidated = true + print("Skipped by first validation: \(csvFile)") + } + return true + }) + } let item = KissDB.DataItem(key: candleData.key, value: candleData.data) try db.insertData(item: item) diff --git a/libraries/KissMeme b/libraries/KissMeme index feb81bf..5ae9afd 160000 --- a/libraries/KissMeme +++ b/libraries/KissMeme @@ -1 +1 @@ -Subproject commit feb81bf03abdc385f244367705b844052ef11ed7 +Subproject commit 5ae9afdfa2ced129c3490b484f05a7d583a93cdb