mirror of
https://github.com/LemmyNet/lemmy.git
synced 2024-11-29 15:51:20 +00:00
Merge remote-tracking branch 'origin/main' into update_read_comments_on_comment_creation
This commit is contained in:
commit
fa144db7f4
3 changed files with 7 additions and 5 deletions
|
@ -652,7 +652,7 @@ impl<'a> PostQuery<'a> {
|
||||||
pool: &mut DbPool<'_>,
|
pool: &mut DbPool<'_>,
|
||||||
) -> Result<Option<PostQuery<'a>>, Error> {
|
) -> Result<Option<PostQuery<'a>>, Error> {
|
||||||
// first get one page for the most popular community to get an upper bound for the page end for
|
// first get one page for the most popular community to get an upper bound for the page end for
|
||||||
// the real query the reason this is needed is that when fetching posts for a single
|
// the real query. the reason this is needed is that when fetching posts for a single
|
||||||
// community PostgreSQL can optimize the query to use an index on e.g. (=, >=, >=, >=) and
|
// community PostgreSQL can optimize the query to use an index on e.g. (=, >=, >=, >=) and
|
||||||
// fetch only LIMIT rows but for the followed-communities query it has to query the index on
|
// fetch only LIMIT rows but for the followed-communities query it has to query the index on
|
||||||
// (IN, >=, >=, >=) which it currently can't do at all (as of PG 16). see the discussion
|
// (IN, >=, >=, >=) which it currently can't do at all (as of PG 16). see the discussion
|
||||||
|
|
|
@ -113,7 +113,7 @@ pub struct PostReportView {
|
||||||
}
|
}
|
||||||
|
|
||||||
/// currently this is just a wrapper around post id, but should be seen as opaque from the client's
|
/// currently this is just a wrapper around post id, but should be seen as opaque from the client's
|
||||||
/// perspective stringified since we might want to use arbitrary info later, with a P prepended to
|
/// perspective. stringified since we might want to use arbitrary info later, with a P prepended to
|
||||||
/// prevent ossification (api users love to make assumptions (e.g. parse stuff that looks like
|
/// prevent ossification (api users love to make assumptions (e.g. parse stuff that looks like
|
||||||
/// numbers as numbers) about apis that aren't part of the spec
|
/// numbers as numbers) about apis that aren't part of the spec
|
||||||
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, Hash)]
|
#[derive(Serialize, Deserialize, Debug, Clone, PartialEq, Eq, Hash)]
|
||||||
|
|
|
@ -37,8 +37,8 @@ use tokio_util::sync::CancellationToken;
|
||||||
use tracing::{debug, info, trace, warn};
|
use tracing::{debug, info, trace, warn};
|
||||||
|
|
||||||
/// Check whether to save state to db every n sends if there's no failures (during failures state is
|
/// Check whether to save state to db every n sends if there's no failures (during failures state is
|
||||||
/// saved after every attempt) This determines the batch size for loop_batch. After a batch ends and
|
/// saved after every attempt). This determines the batch size for loop_batch. After a batch ends
|
||||||
/// SAVE_STATE_EVERY_TIME has passed, the federation_queue_state is updated in the DB.
|
/// and SAVE_STATE_EVERY_TIME has passed, the federation_queue_state is updated in the DB.
|
||||||
static CHECK_SAVE_STATE_EVERY_IT: i64 = 100;
|
static CHECK_SAVE_STATE_EVERY_IT: i64 = 100;
|
||||||
/// Save state to db after this time has passed since the last state (so if the server crashes or is
|
/// Save state to db after this time has passed since the last state (so if the server crashes or is
|
||||||
/// SIGKILLed, less than X seconds of activities are resent)
|
/// SIGKILLed, less than X seconds of activities are resent)
|
||||||
|
@ -161,7 +161,9 @@ impl InstanceWorker {
|
||||||
id
|
id
|
||||||
} else {
|
} else {
|
||||||
// this is the initial creation (instance first seen) of the federation queue for this
|
// this is the initial creation (instance first seen) of the federation queue for this
|
||||||
// instance skip all past activities:
|
// instance
|
||||||
|
|
||||||
|
// skip all past activities:
|
||||||
self.state.last_successful_id = Some(latest_id);
|
self.state.last_successful_id = Some(latest_id);
|
||||||
// save here to ensure it's not read as 0 again later if no activities have happened
|
// save here to ensure it's not read as 0 again later if no activities have happened
|
||||||
self.save_and_send_state(pool).await?;
|
self.save_and_send_state(pool).await?;
|
||||||
|
|
Loading…
Reference in a new issue