1#[cfg(feature = "dst_arrow")]
2use arrow::datatypes::DataType as ArrowDataType;
3
4#[cfg(feature = "dst_arrow")]
5pub const DEFAULT_ARROW_DECIMAL_PRECISION: u8 = 38;
6
7#[cfg(feature = "dst_arrow")]
8pub const DEFAULT_ARROW_DECIMAL_SCALE: i8 = 10;
9
10#[cfg(feature = "dst_arrow")]
11pub const DEFAULT_ARROW_DECIMAL: ArrowDataType =
12 ArrowDataType::Decimal128(DEFAULT_ARROW_DECIMAL_PRECISION, DEFAULT_ARROW_DECIMAL_SCALE);
13
14#[cfg(feature = "dst_arrow")]
15pub(crate) const SECONDS_IN_DAY: i64 = 86_400;
16
17#[allow(dead_code)]
18const KILO: usize = 1 << 10;
19
20#[cfg(feature = "dst_arrow")]
21pub const RECORD_BATCH_SIZE: usize = 64 * KILO;
22
23#[cfg(any(
24 feature = "src_postgres",
25 feature = "src_mysql",
26 feature = "src_oracle",
27 feature = "src_mssql"
28))]
29pub const DB_BUFFER_SIZE: usize = 32;
30
31#[cfg(any(feature = "src_oracle"))]
32pub const ORACLE_ARRAY_SIZE: u32 = KILO as u32;
33
34#[cfg(all(not(debug_assertions), feature = "federation"))]
35pub const J4RS_BASE_PATH: &str = "../target/release";
36
37#[cfg(all(debug_assertions, feature = "federation"))]
38pub const J4RS_BASE_PATH: &str = "../target/debug";
39
40#[cfg(feature = "federation")]
41pub const CX_REWRITER_PATH: &str =
42 "../connectorx-python/connectorx/dependencies/federated-rewriter.jar";
43
44#[cfg(feature = "federation")]
45pub const POSTGRES_JDBC_DRIVER: &str = "org.postgresql.Driver";
46
47#[cfg(feature = "federation")]
48pub const MYSQL_JDBC_DRIVER: &str = "com.mysql.cj.jdbc.Driver";
49
50#[cfg(feature = "federation")]
51pub const DUCKDB_JDBC_DRIVER: &str = "org.duckdb.DuckDBDriver";
52
53pub const CONNECTORX_PROTOCOL: &str = "cxprotocol";