override fun findMultipleForUpdate()

in core/scm-repository/src/main/kotlin/io/klibs/core/scm/repository/ScmRepositoryRepositoryJdbc.kt [285:320]


    override fun findMultipleForUpdate(limit: Int): List<ScmRepositoryEntity> {
        val sql = """
            SELECT repo.id,
                   repo.id_native,
                   repo.name,
                   repo.description,
                   repo.default_branch,
                   repo.created_ts,
                   repo.owner_id,
                   owner.type     owner_type,
                   owner.login AS owner_login,
                   repo.homepage,
                   repo.has_gh_pages,
                   repo.has_issues,
                   repo.has_wiki,
                   repo.has_readme,
                   repo.license_key,
                   repo.license_name,
                   repo.stars,
                   repo.open_issues,
                   repo.last_activity_ts,
                   repo.updated_at,
                   repo.minimized_readme
            FROM scm_repo repo
                     JOIN scm_owner owner ON repo.owner_id = owner.id
            WHERE repo.updated_at < (current_timestamp - interval '24 hours')
            ORDER BY repo.stars DESC
            LIMIT :limit FOR UPDATE
                SKIP LOCKED
        """.trimIndent()

        return jdbcClient.sql(sql)
            .param("limit", limit)
            .query(SCM_REPO_ENTITY_ROW_MAPPER)
            .list()
    }