|
| 1 | +use std::str::FromStr; |
| 2 | + |
| 3 | +use bigdecimal::BigDecimal; |
1 | 4 | use ndarray::arr1; |
2 | 5 | use questdb::{ |
3 | 6 | ingress::{Sender, TimestampNanos}, |
4 | 7 | Result, |
5 | 8 | }; |
6 | 9 |
|
7 | 10 | fn main() -> Result<()> { |
| 11 | + let price = BigDecimal::from_str("2615.54").unwrap(); |
| 12 | + |
8 | 13 | let mut sender = Sender::from_conf( |
9 | | - "https::addr=localhost:9000;username=foo;password=bar;protocol_version=1;", |
| 14 | + "http::addr=localhost:9000;username=foo;password=bar;protocol_version=1;", |
10 | 15 | )?; |
11 | 16 | let mut buffer = sender.new_buffer(); |
12 | 17 | buffer |
13 | 18 | .table("trades_ilp_v1")? |
14 | 19 | .symbol("symbol", "ETH-USD")? |
15 | 20 | .symbol("side", "sell")? |
16 | | - .column_f64("price", 2615.54)? |
| 21 | + .column_decimal("price", &price)? |
17 | 22 | .column_f64("amount", 0.00044)? |
18 | 23 | .at(TimestampNanos::now())?; |
19 | 24 | sender.flush(&mut buffer)?; |
20 | 25 |
|
21 | 26 | // QuestDB server version 9.0.0 or later is required for `protocol_version=2` support. |
22 | 27 | let mut sender2 = Sender::from_conf( |
23 | | - "https::addr=localhost:9000;username=foo;password=bar;protocol_version=2;", |
| 28 | + "http::addr=localhost:9000;username=foo;password=bar;protocol_version=2;", |
24 | 29 | )?; |
25 | | - let mut buffer2 = sender.new_buffer(); |
| 30 | + let mut buffer2 = sender2.new_buffer(); |
26 | 31 | buffer2 |
27 | 32 | .table("trades_ilp_v2")? |
28 | 33 | .symbol("symbol", "ETH-USD")? |
29 | 34 | .symbol("side", "sell")? |
30 | | - .column_f64("price", 2615.54)? |
| 35 | + .column_decimal("price", &price)? |
31 | 36 | .column_f64("amount", 0.00044)? |
32 | 37 | .column_arr("location", &arr1(&[100.0, 100.1, 100.2]).view())? |
33 | 38 | .at(TimestampNanos::now())?; |
|
0 commit comments