mirror of
https://github.com/XRPLF/clio.git
synced 2025-11-23 05:05:54 +00:00
Impliments book_offers in postgres
This commit is contained in:
@@ -431,14 +431,11 @@ PostgresBackend::fetchBookOffers(
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
auto blob = res.asUnHexedBlob(i, 2);
|
|
||||||
|
|
||||||
results.push_back({std::move(book), std::move(key)});
|
results.push_back({std::move(book), std::move(key)});
|
||||||
}
|
}
|
||||||
|
|
||||||
return {complete, results};
|
return {complete, results};
|
||||||
}
|
}
|
||||||
std::vector<Blob> blobs = fetchLedgerObjects(keys, ledgerSequence);
|
|
||||||
|
|
||||||
return {true, {}};
|
return {true, {}};
|
||||||
};
|
};
|
||||||
@@ -476,6 +473,22 @@ PostgresBackend::fetchBookOffers(
|
|||||||
if (upperComplete)
|
if (upperComplete)
|
||||||
return fetchObjects(upperResults, ledgerSequence, limit);
|
return fetchObjects(upperResults, ledgerSequence, limit);
|
||||||
|
|
||||||
|
auto lower = (ledgerSequence >> 8) << 8;
|
||||||
|
auto [lowerComplete, lowerResults] = getBooks(lower);
|
||||||
|
|
||||||
|
assert(lowerComplete);
|
||||||
|
|
||||||
|
std::vector<bookKeyPair> pairs;
|
||||||
|
pairs.reserve(upperResults.size() + lowerResults.size());
|
||||||
|
std::merge(upperResults.begin(), upperResults.end(),
|
||||||
|
lowerResults.begin(), lowerResults.end(),
|
||||||
|
std::back_inserter(pairs),
|
||||||
|
[](bookKeyPair pair1, bookKeyPair pair2) -> bool
|
||||||
|
{
|
||||||
|
return pair1.first < pair2.first;
|
||||||
|
});
|
||||||
|
|
||||||
|
return fetchObjects(pairs, ledgerSequence, limit);
|
||||||
}
|
}
|
||||||
|
|
||||||
std::vector<TransactionAndMetadata>
|
std::vector<TransactionAndMetadata>
|
||||||
|
|||||||
Reference in New Issue
Block a user