Compiler improvements (#753)

* basic redis add

* toml; reverted unnecessary changes

* merge issues

* increased test connections

---------

Co-authored-by: Geometrically <18202329+Geometrically@users.noreply.github.com>
This commit is contained in:
Wyatt Verchere
2023-11-19 19:10:13 -08:00
committed by GitHub
parent e06a77af28
commit dfba6c7c91
22 changed files with 307 additions and 140 deletions

View File

@@ -513,6 +513,8 @@ impl Project {
return Ok(Vec::new());
}
let mut redis = redis.connect().await?;
let mut found_projects = Vec::new();
let mut remaining_strings = project_strings
.iter()
@@ -526,7 +528,7 @@ impl Project {
project_ids.append(
&mut redis
.multi_get::<i64, _>(
.multi_get::<i64>(
PROJECTS_SLUGS_NAMESPACE,
project_strings.iter().map(|x| x.to_string().to_lowercase()),
)
@@ -537,7 +539,10 @@ impl Project {
);
if !project_ids.is_empty() {
let projects = redis
.multi_get::<String, _>(PROJECTS_NAMESPACE, project_ids)
.multi_get::<String>(
PROJECTS_NAMESPACE,
project_ids.iter().map(|x| x.to_string()),
)
.await?;
for project in projects {
if let Some(project) =
@@ -686,8 +691,8 @@ impl Project {
redis
.set(
PROJECTS_SLUGS_NAMESPACE,
slug.to_lowercase(),
project.inner.id.0,
&slug.to_lowercase(),
&project.inner.id.0.to_string(),
None,
)
.await?;
@@ -709,8 +714,13 @@ impl Project {
{
type Dependencies = Vec<(Option<VersionId>, Option<ProjectId>, Option<ProjectId>)>;
let mut redis = redis.connect().await?;
let dependencies = redis
.get_deserialized_from_json::<Dependencies, _>(PROJECTS_DEPENDENCIES_NAMESPACE, id.0)
.get_deserialized_from_json::<Dependencies>(
PROJECTS_DEPENDENCIES_NAMESPACE,
&id.0.to_string(),
)
.await?;
if let Some(dependencies) = dependencies {
return Ok(dependencies);
@@ -755,6 +765,8 @@ impl Project {
clear_dependencies: Option<bool>,
redis: &RedisPool,
) -> Result<(), DatabaseError> {
let mut redis = redis.connect().await?;
redis
.delete_many([
(PROJECTS_NAMESPACE, Some(id.0.to_string())),