WIP
This commit is contained in:
@@ -47,6 +47,10 @@ impl<T> InMemoryFrameAsyncReadStream<T>
|
||||
where
|
||||
T: AsyncRead + Unpin,
|
||||
{
|
||||
pub fn type_name() -> &'static str {
|
||||
std::any::type_name::<Self>()
|
||||
}
|
||||
|
||||
pub fn new(inp: T, bufcap: usize) -> Self {
|
||||
Self {
|
||||
inp,
|
||||
@@ -162,7 +166,7 @@ where
|
||||
let _spanguard = span.enter();
|
||||
loop {
|
||||
break if self.complete {
|
||||
panic!("poll_next on complete")
|
||||
panic!("{} poll_next on complete", Self::type_name())
|
||||
} else if self.done {
|
||||
self.complete = true;
|
||||
Ready(None)
|
||||
|
||||
@@ -8,6 +8,7 @@ use items_0::streamitem::Sitemty;
|
||||
use items_0::streamitem::StreamItem;
|
||||
use items_0::Appendable;
|
||||
use items_0::Empty;
|
||||
use items_0::WithLen;
|
||||
use items_2::channelevents::ChannelEvents;
|
||||
use items_2::eventsdim0::EventsDim0;
|
||||
use items_2::eventsdim1::EventsDim1;
|
||||
@@ -243,10 +244,10 @@ impl GenerateF64V00 {
|
||||
let mut value = Vec::new();
|
||||
let pi = PI;
|
||||
for i in 0..21 {
|
||||
let x = ((-pi + (2. * pi / 20.) * i as f64).cos() + 1.) * ampl;
|
||||
let x = ((-pi + (2. * pi / 20.) * i as f64).cos() + 1.1) * ampl;
|
||||
value.push(x);
|
||||
}
|
||||
if true {
|
||||
if false {
|
||||
info!(
|
||||
"v01 node {} made event ts {} pulse {} value {:?}",
|
||||
self.node_ix, ts, pulse, value
|
||||
@@ -256,6 +257,7 @@ impl GenerateF64V00 {
|
||||
ts += self.dts;
|
||||
}
|
||||
self.ts = ts;
|
||||
info!("generated len {}", item.len());
|
||||
let w = ChannelEvents::Events(Box::new(item) as _);
|
||||
let w = sitem_data(w);
|
||||
w
|
||||
|
||||
@@ -39,14 +39,14 @@ where
|
||||
S: Stream<Item = Sitemty<ITY>> + Unpin,
|
||||
ITY: Mergeable,
|
||||
{
|
||||
const fn selfname() -> &'static str {
|
||||
"RangeFilter2"
|
||||
pub fn type_name() -> &'static str {
|
||||
std::any::type_name::<Self>()
|
||||
}
|
||||
|
||||
pub fn new(inp: S, range: NanoRange, one_before_range: bool) -> Self {
|
||||
trace!(
|
||||
"{}::new range: {:?} one_before_range: {:?}",
|
||||
Self::selfname(),
|
||||
info!(
|
||||
"----------------------------\n------------------------\n------------------------\n{}::new range: {:?} one_before_range: {:?}",
|
||||
Self::type_name(),
|
||||
range,
|
||||
one_before_range
|
||||
);
|
||||
@@ -152,7 +152,11 @@ where
|
||||
use Poll::*;
|
||||
loop {
|
||||
break if self.complete {
|
||||
Ready(Some(Err(Error::with_msg_no_trace("poll_next on complete"))))
|
||||
error!("{} poll_next on complete", Self::type_name());
|
||||
Ready(Some(Err(Error::with_msg_no_trace(format!(
|
||||
"{} poll_next on complete",
|
||||
Self::type_name()
|
||||
)))))
|
||||
} else if self.done {
|
||||
self.complete = true;
|
||||
Ready(None)
|
||||
@@ -219,7 +223,7 @@ where
|
||||
ITY: Mergeable,
|
||||
{
|
||||
fn fmt(&self, f: &mut fmt::Formatter) -> fmt::Result {
|
||||
f.debug_struct(Self::selfname()).finish()
|
||||
f.debug_struct(Self::type_name()).finish()
|
||||
}
|
||||
}
|
||||
|
||||
@@ -229,6 +233,6 @@ where
|
||||
ITY: Mergeable,
|
||||
{
|
||||
fn drop(&mut self) {
|
||||
debug!("drop {} {:?}", Self::selfname(), self);
|
||||
debug!("drop {} {:?}", Self::type_name(), self);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -167,6 +167,7 @@ where
|
||||
StreamItem::Stats(item) => Ok(Break(Ready(Ok(StreamItem::Stats(item))))),
|
||||
},
|
||||
Err(e) => {
|
||||
error!("received error item: {e}");
|
||||
self.done = true;
|
||||
Err(e)
|
||||
}
|
||||
@@ -179,11 +180,11 @@ where
|
||||
use ControlFlow::*;
|
||||
use Poll::*;
|
||||
trace2!("================= handle_none");
|
||||
let self_range_complete = self.range_final;
|
||||
let self_range_final = self.range_final;
|
||||
if let Some(binner) = self.binner.as_mut() {
|
||||
trace!("bins ready count before finish {}", binner.bins_ready_count());
|
||||
// TODO rework the finish logic
|
||||
if self_range_complete {
|
||||
if self_range_final {
|
||||
binner.set_range_complete();
|
||||
}
|
||||
binner.push_in_progress(false);
|
||||
@@ -194,6 +195,7 @@ where
|
||||
} else {
|
||||
warn!("bins ready but got nothing");
|
||||
if let Some(bins) = binner.empty() {
|
||||
self.done_data = true;
|
||||
Ok(Break(Ready(sitem_data(bins))))
|
||||
} else {
|
||||
let e = Error::with_msg_no_trace("bins ready, but nothing, can not even create empty B");
|
||||
@@ -242,7 +244,7 @@ where
|
||||
trace2!("================= POLL");
|
||||
loop {
|
||||
break if self.complete {
|
||||
panic!("poll on complete")
|
||||
panic!("TimeBinnedStream poll on complete")
|
||||
} else if self.done {
|
||||
self.complete = true;
|
||||
Ready(None)
|
||||
|
||||
Reference in New Issue
Block a user