Remove stored abbreviation
- Alpaca is fuck Signed-off-by: Nikolaos Karaolidis <nick@karaolidis.com>
This commit is contained in:
@@ -15,8 +15,7 @@ where
|
||||
T: AsRef<str> + Serialize + Send + Sync,
|
||||
{
|
||||
clickhouse_client
|
||||
.query("SELECT ?fields FROM assets FINAL WHERE symbol = ? OR abbreviation = ?")
|
||||
.bind(symbol)
|
||||
.query("SELECT ?fields FROM assets FINAL WHERE symbol = ?")
|
||||
.bind(symbol)
|
||||
.fetch_optional::<Asset>()
|
||||
.await
|
||||
|
@@ -1,4 +1,4 @@
|
||||
use crate::{database::assets, threads::data::ThreadType, types::Backfill};
|
||||
use crate::{threads::data::ThreadType, types::Backfill};
|
||||
use clickhouse::Client;
|
||||
use serde::Serialize;
|
||||
use tokio::join;
|
||||
@@ -58,23 +58,9 @@ pub async fn delete_where_symbols<T>(
|
||||
}
|
||||
|
||||
pub async fn cleanup(clickhouse_client: &Client) {
|
||||
let assets = assets::select(clickhouse_client).await;
|
||||
|
||||
let bars_symbols = assets
|
||||
.clone()
|
||||
.into_iter()
|
||||
.map(|asset| asset.symbol)
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
let news_symbols = assets
|
||||
.into_iter()
|
||||
.map(|asset| asset.abbreviation)
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
let delete_bars_future = async {
|
||||
clickhouse_client
|
||||
.query("DELETE FROM backfills_bars WHERE symbol NOT IN ?")
|
||||
.bind(bars_symbols)
|
||||
.query("DELETE FROM backfills_bars WHERE symbol NOT IN (SELECT symbol FROM assets)")
|
||||
.execute()
|
||||
.await
|
||||
.unwrap();
|
||||
@@ -82,8 +68,7 @@ pub async fn cleanup(clickhouse_client: &Client) {
|
||||
|
||||
let delete_news_future = async {
|
||||
clickhouse_client
|
||||
.query("DELETE FROM backfills_news WHERE symbol NOT IN ?")
|
||||
.bind(news_symbols)
|
||||
.query("DELETE FROM backfills_news WHERE symbol NOT IN (SELECT symbol FROM assets)")
|
||||
.execute()
|
||||
.await
|
||||
.unwrap();
|
||||
|
@@ -1,4 +1,3 @@
|
||||
use super::assets;
|
||||
use crate::types::Bar;
|
||||
use clickhouse::Client;
|
||||
use serde::Serialize;
|
||||
@@ -34,16 +33,8 @@ where
|
||||
}
|
||||
|
||||
pub async fn cleanup(clickhouse_client: &Client) {
|
||||
let assets = assets::select(clickhouse_client).await;
|
||||
|
||||
let symbols = assets
|
||||
.into_iter()
|
||||
.map(|asset| asset.symbol)
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
clickhouse_client
|
||||
.query("DELETE FROM bars WHERE symbol NOT IN ?")
|
||||
.bind(symbols)
|
||||
.query("DELETE FROM bars WHERE symbol NOT IN (SELECT symbol FROM assets)")
|
||||
.execute()
|
||||
.await
|
||||
.unwrap();
|
||||
|
@@ -1,4 +1,3 @@
|
||||
use super::assets;
|
||||
use crate::types::News;
|
||||
use clickhouse::Client;
|
||||
use serde::Serialize;
|
||||
@@ -25,31 +24,19 @@ pub async fn delete_where_symbols<T>(clickhouse_client: &Client, symbols: &[T])
|
||||
where
|
||||
T: AsRef<str> + Serialize + Send + Sync,
|
||||
{
|
||||
let remaining_symbols = assets::select(clickhouse_client)
|
||||
.await
|
||||
.into_iter()
|
||||
.map(|asset| asset.abbreviation)
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
clickhouse_client
|
||||
.query("DELETE FROM news WHERE hasAny(symbols, ?) AND NOT hasAny(symbols, ?)")
|
||||
.query("DELETE FROM news WHERE hasAny(symbols, ?) AND NOT hasAny(symbols, (SELECT groupArray(symbol) FROM assets))")
|
||||
.bind(symbols)
|
||||
.bind(remaining_symbols)
|
||||
.execute()
|
||||
.await
|
||||
.unwrap();
|
||||
}
|
||||
|
||||
pub async fn cleanup(clickhouse_client: &Client) {
|
||||
let remaining_symbols = assets::select(clickhouse_client)
|
||||
.await
|
||||
.into_iter()
|
||||
.map(|asset| asset.abbreviation)
|
||||
.collect::<Vec<_>>();
|
||||
|
||||
clickhouse_client
|
||||
.query("DELETE FROM news WHERE NOT hasAny(symbols, ?)")
|
||||
.bind(remaining_symbols)
|
||||
.query(
|
||||
"DELETE FROM news WHERE NOT hasAny(symbols, (SELECT groupArray(symbol) FROM assets))",
|
||||
)
|
||||
.execute()
|
||||
.await
|
||||
.unwrap();
|
||||
|
Reference in New Issue
Block a user