Échec de sauvegarde Gitlab et objets LFS

Lors d’une récente sauvegarde du contenu de mon Gitlab en vue d’une mise à jour, j’ai vu apparaître une erreur déjà rencontrée lors d’une précédente sauvegarde.

rake aborted!
Errno::ENOENT: No such file or directory @ realpath_rec - /home/git/gitlab/shared/lfs-objects

N’ayant pas à ma connaissance d’objets LFS à sauvegarder, j’ai donc ajouter un paramètre pour éviter la tentative de sauvegarde de ces objets avec SKIP=lfs. On obtient donc la commande suivante :

sudo -u git -H bundle exec rake gitlab:backup:create SKIP=lfs RAILS_ENV=production

Maj : Ce problème est résolu à partir de Gitlab 8.3.

[SQL] DROP CREATE « pattern » (MSSQL)

Simple reminder for a working drop-create pattern in SQL (Successfully used with MSSQL).

Log modification in table _chgLog first.

INSERT INTO _chgLog ([Date], [Version], [txt], [Type])
    VALUES (GETDATE(), '0.0.1', 'Update example', 0)
GO

If object exists, we drop it before doing anything (But do not drop table unless you don’t care about data).

IF OBJECTPROPERTY(object_id('example'), N'IsProcedure') = 1
    DROP PROCEDURE [dbo].[example]
GO

Other interesting parameters for function objectproperty are the following (more to be found here) :

  • IsInlineFunction
  • IsProcedure
  • IsScalarFunction
  • IsTable
  • IsTableFunction
  • IsTrigger
  • IsView

Then, we create the object.

-- =============================================
-- Author: vvision
-- Create date: 22/03/2016
-- Description: <Description>
-- =============================================

CREATE PROCEDURE [dbo].[example]
  @id INT,
AS
  SELECT *
  FROM [dbo].[example]
  WHERE id = @id
GO

Finally, we give permissions to users if needed.

GRANT EXECUTE ON [dbo].[example] TO [user] AS [dbo]
GO

 

On another subject, to alter a table, we can use:

IF COL_LENGTH('table','newField') IS NULL
BEGIN
  ALTER TABLE [dbo].[table] ADD newField VARCHAR(128) NULL
END

Citations [3] – Arthur C. Clarke

Dès la fin de l’année 2133, des observateurs lucides acquirent la conviction que le « Boom raméen » conduirait à un désastre. Ils firent de sombres prédictions sur l’effondrement imminent du système économique, au milieu des cris d’enthousiasme des multitudes euphoriques qui découvraient l’abondance. Nul ne tint compte de leurs suggestions d’équilibrer les budgets et de limiter les crédits à tous les niveaux. On ne songeait au contraire qu’à élargir les possibilités d’achat d’une population qui ne savait plus attendre, et encore moins se priver.

Rama II, Arthur C. Clarke

Modules Firefox pour 2016

J’ai effectué récemment un nettoyage de mon navigateur Firefox, vérifié les paramètres et surtout, revu les modules installés. Voici donc ma sélection en ce début d’année.

  • HTTPS-Everywhere : Redirige automatiquement les requêtes vers HTTPS pour de nombreux sites. Proposé par l’EFF.
  • uBlock Origin : Bloqueur de nuisance et de pisteurs. Son empreinte mémoire est plus légère que les autres modules du même type.
  • Ghostery : Blocage supplémentaire de script. GhostRank désactivé. Plutôt efficace et clair en ce qui concerne les éléments bloqués. Pas encore trouvé d’autres alternatives satisfaisantes.
  • KeeFox : Pour interfaçage avec Keepass. Facilite la gestion des mots de passe.
  • FlagFox : Indique la localisation du serveur au niveau de la barre d’adresse. Recherche par base de données interne d’IP avec mise à jour mensuelle de la base. Pas de requête externe à chaque site visité. Permet d’avoir une vague idée des lois qui concerne le serveur auquel on accède.
  • Dark Youtube Theme : Un thème noir pour Youtube c’est tellement plus agréable.
  • FT DeepDark : Un thème noir pour Firefox.

Unicoda change de tête

Depuis quelques jours maintenant, Unicoda affiche un nouveau thème tout nouveau tout neuf!

Premier changement de thème depuis l’ouverture du site. Nous passons donc directement de l’ancien Twenty Eleven au récent Twenty Sixteen. La mise en page reste similaire, le menu s’est déplacé en haut à droite et l’auteur d’un article est plus facilement identifiable.
Ce nouveau thème devrait également améliorer la navigation sur mobile.

Bref, nous espérons que ce changement satisfera le lecteur comme il nous satisfait.

Bonne (re)découverte!