Skip to content

Commit

Permalink
fix: the signature unmatch in async trait function
Browse files Browse the repository at this point in the history
  • Loading branch information
BowenXiao1999 committed Jun 8, 2022
1 parent f6da1a8 commit ad9ec87
Showing 1 changed file with 12 additions and 16 deletions.
28 changes: 12 additions & 16 deletions src/storage/src/table/state_table.rs
Original file line number Diff line number Diff line change
Expand Up @@ -258,9 +258,7 @@ impl<S: StateStore> StateTableRowIter<S> {
.peekable();
pin_mut!(cell_based_table_iter);

let mut mem_table_iter = mem_table_iter
.map(|(k, v)| Ok::<_, StorageError>((k, v)))
.peekable();
let mut mem_table_iter = mem_table_iter.peekable();

loop {
match (
Expand All @@ -273,7 +271,7 @@ impl<S: StateStore> StateTableRowIter<S> {
yield Cow::Owned(row);
}
(None, Some(_)) => {
let row_op = mem_table_iter.next().unwrap()?.1;
let row_op = mem_table_iter.next().unwrap().1;
match row_op {
RowOp::Insert(row) | RowOp::Update((_, row)) => {
yield Cow::Borrowed(row);
Expand All @@ -284,7 +282,7 @@ impl<S: StateStore> StateTableRowIter<S> {

(
Some(Ok((cell_based_pk, cell_based_row))),
Some(Ok((mem_table_pk, _mem_table_row_op))),
Some((mem_table_pk, _mem_table_row_op)),
) => {
match cell_based_pk.cmp(mem_table_pk) {
Ordering::Less => {
Expand All @@ -296,7 +294,7 @@ impl<S: StateStore> StateTableRowIter<S> {
// mem_table_item will be return, while both cell_based_streaming_iter
// and mem_table_iter need to execute next()
// once.
let row_op = mem_table_iter.next().unwrap()?.1;
let row_op = mem_table_iter.next().unwrap().1;
match row_op {
RowOp::Insert(row) => yield Cow::Borrowed(row),
RowOp::Delete(_) => {}
Expand All @@ -309,7 +307,7 @@ impl<S: StateStore> StateTableRowIter<S> {
}
Ordering::Greater => {
// mem_table_item will be return
let row_op = mem_table_iter.next().unwrap()?.1;
let row_op = mem_table_iter.next().unwrap().1;
match row_op {
RowOp::Insert(row) => yield Cow::Borrowed(row),
RowOp::Delete(_) => {}
Expand All @@ -321,7 +319,7 @@ impl<S: StateStore> StateTableRowIter<S> {
(Some(_), Some(_)) => {
// Throw the error.
cell_based_table_iter.next().await.unwrap()?;
mem_table_iter.next().unwrap()?;
mem_table_iter.next().unwrap();

unreachable!()
}
Expand Down Expand Up @@ -353,9 +351,7 @@ impl<S: StateStore> StateTableRowIter<S> {
.peekable();
pin_mut!(cell_based_table_iter);

let mut mem_table_iter = mem_table_iter
.map(|(k, v)| Ok::<_, StorageError>((k, v)))
.peekable();
let mut mem_table_iter = mem_table_iter.peekable();
loop {
match (
cell_based_table_iter.as_mut().peek().await,
Expand All @@ -367,7 +363,7 @@ impl<S: StateStore> StateTableRowIter<S> {
yield Cow::Owned(row);
}
(None, Some(_)) => {
let (mem_table_pk, row_op) = mem_table_iter.next().unwrap()?;
let (mem_table_pk, row_op) = mem_table_iter.next().unwrap();

if mem_table_bounds.contains(mem_table_pk) {
match row_op {
Expand All @@ -381,7 +377,7 @@ impl<S: StateStore> StateTableRowIter<S> {

(
Some(Ok((cell_based_pk, cell_based_row))),
Some(Ok((mem_table_pk, _mem_table_row_op))),
Some((mem_table_pk, _mem_table_row_op)),
) => {
match cell_based_pk.cmp(mem_table_pk) {
Ordering::Less => {
Expand All @@ -393,7 +389,7 @@ impl<S: StateStore> StateTableRowIter<S> {
// mem_table_item will be return, while both
// and mem_table_iter need to execute
// once.
let (mem_table_pk, row_op) = mem_table_iter.next().unwrap()?;
let (mem_table_pk, row_op) = mem_table_iter.next().unwrap();
if mem_table_bounds.contains(mem_table_pk) {
match row_op {
RowOp::Insert(row) => yield Cow::Borrowed(row),
Expand All @@ -408,7 +404,7 @@ impl<S: StateStore> StateTableRowIter<S> {
}
Ordering::Greater => {
// mem_table_item will be return
let (mem_table_pk, row_op) = mem_table_iter.next().unwrap()?;
let (mem_table_pk, row_op) = mem_table_iter.next().unwrap();
if mem_table_bounds.contains(mem_table_pk) {
match row_op {
RowOp::Insert(row) => yield Cow::Borrowed(row),
Expand All @@ -422,7 +418,7 @@ impl<S: StateStore> StateTableRowIter<S> {
(Some(_), Some(_)) => {
// Throw the error.
cell_based_table_iter.next().await.unwrap()?;
mem_table_iter.next().unwrap()?;
mem_table_iter.next().unwrap();

unreachable!()
}
Expand Down

0 comments on commit ad9ec87

Please sign in to comment.