Attention ! Gitlab fournissant maintenant nativement des certificats Let’s Encrypt aux domaines personnalisés des Gitlab Pages, nous avons coupé notre service qui le faisait automatiquement pour vous.

Il est impératif, pour que votre domaine personnalisé continue à avoir un certificat Let’s Encrypt à jour, d’activer la fonctionnalité native dans les paramètres de votre projet. Cette activation remplacera votre certificat actuel par un nouveau certificat Let’s Encrypt géré par Gitlab.

Voir les détails sur https://docs.framasoft.org/fr/gitlab/gitlab-pages-le.html

Commit cb4e6c6f authored by Luc Didry's avatar Luc Didry

Fixed #5 : Scalability (again)

Using transactions seems to do the job
parent 35ec6bb9
......@@ -26,14 +26,17 @@ sub startup {
# Create some short patterns for provisionning
if (LstuModel::Lstu->count('WHERE url IS NULL') < $c->config->{provisionning}) {
for (my $i = 0; $i < $c->config->{provis_step}; $i++) {
my $short;
do {
$short= $c->shortener($c->config->{length});
} while (LstuModel::Lstu->count('WHERE short = ?', $short));
LstuModel::Lstu->create(
short => $short
);
if (LstuModel->begin) {
my $short;
do {
$short= $c->shortener($c->config->{length});
} while (LstuModel::Lstu->count('WHERE short = ?', $short));
LstuModel::Lstu->create(
short => $short
);
LstuModel->commit;
}
}
}
}
......@@ -118,23 +121,26 @@ sub startup {
url => $url
);
} else {
@records = LstuModel::Lstu->select('WHERE url IS NULL LIMIT 1');
if (scalar(@records)) {
$records[0]->update(
url => $url,
counter => 0,
timestamp => time()
);
$c->flash(
short => $records[0]->short,
url => $url
);
} else {
# Houston, we have a problem
$c->flash(
msg => $c->l('no_more_short', $c->config->{contact}, $url)
);
if(LstuModel->begin) {
@records = LstuModel::Lstu->select('WHERE url IS NULL LIMIT 1');
if (scalar(@records)) {
$records[0]->update(
url => $url,
counter => 0,
timestamp => time()
);
$c->flash(
short => $records[0]->short,
url => $url
);
} else {
# Houston, we have a problem
$c->flash(
msg => $c->l('no_more_short', $c->config->{contact}, $url)
);
}
LstuModel->commit;
}
}
} else {
......@@ -151,7 +157,7 @@ sub startup {
});
};
$r->post('/a/' => $add)->name('add');
$r->post('/a/' => $add)->name('add');
$r->get('/a/*lsturl' => $add)->name('addurl');
}
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment