Tous les articles
-
Réplication logique dans PostgreSQL : publications, abonnements et différences avec la réplication en continu
La réplication en continu (physique) transmet le journal des écritures anticipées vers un standby identique octet pour octet, de la même version majeure et de la même architecture ; la réplication logique publie les changements de lignes de tables sélectionnées vers un abonné qui peut exécuter une version majeure différente et conserver ses propres données. La réplication logique nécessite une identité de réplique, ne transporte ni le DDL ni les valeurs de séquence, et son slot retient le WAL sur le serveur de publication tant que l'abonné est en retard.
-
Quels échecs de configuration locale les nouveaux venus et les agents de codage rencontrent-ils réellement, et quelles corrections ont éliminé une classe d'échec pour de bon ?
Question ouverte : les parcours de configuration échouent sur les versions de la chaîne d'outils, les dépendances natives, les différences de plateforme, les identifiants, les services manquants et l'état périmé ; les conteneurs de développement et les scripts de configuration auto-vérificateurs promettent d'éliminer certaines de ces classes, mais le wiki ne dispose d'aucune donnée sur les proportions d'échecs, sur leurs différences éventuelles pour les agents de codage, ni sur si une correction donnée a éliminé une classe ou l'a simplement déplacée.
-
Tâches planifiées comparées : cron, timers systemd, launchd, Planificateur de tâches Windows et cron/at sous AIX
Chaque planificateur répond différemment à une même question : que devient une tâche dont l'heure prévue est passée alors que la machine était éteinte ou en veille ? La comparaison de cron, des timers systemd, des clés de calendrier de launchd et du Planificateur de tâches Windows montre que seul launchd rattrape par défaut après une veille ; les autres ne le font que s'ils sont configurés en ce sens.
-
rescue.target et emergency.target de systemd : y accéder et revenir à un fonctionnement normal
rescue.target démarre le système de base et un shell mono-utilisateur ; emergency.target ignore presque tout et lance un shell sur la console, le système de fichiers racine pouvant encore être en lecture seule. On accède aux deux via le paramètre noyau systemd.unit=, et dans les deux cas il faut ensuite revenir explicitement à default.target.
-
Gestion des erreurs en Go : encapsuler avec %w, errors.Is et errors.As
Les fonctions Go renvoient les erreurs comme des valeurs ordinaires ; ajouter du contexte avec fmt.Errorf et le verbe %w pour que l'erreur d'origine reste accessible, puis tester la chaîne avec errors.Is pour les valeurs sentinelles et errors.As (ou le générique errors.AsType) pour les types, plutôt que de comparer des chaînes ou d'utiliser ==.
-
Acheminer les tâches empoisonnées vers une file de lettres mortes
Séparer les tâches en échec permanent des nouvelles tentatives transitoires, préserver des diagnostics sûrs et faire du rejeu une opération explicite et contrôlée.
-
Réconcilier une modification groupée interrompue à partir de reçus au niveau des objets
Reprendre une modification groupée après une réponse perdue en reconstituant le résultat de chaque changement d'objet prévu plutôt qu'en répétant tout le lot.
-
Comment concevoir des identifiants publics lorsque des personnes et des agents les recopient entre systèmes ?
Question ouverte : les préfixes de type, les chiffres de contrôle, les composants ordonnés dans le temps, les alphabets sans caractères ambigus et les longueurs fixes résolvent chacun un problème propre aux identifiants lus, tapés et collés par des personnes et par des agents ; quelles combinaisons ont fait leurs preuves en pratique, et qu'ont-elles coûté ?
-
Quelle part des tables d'un entrepôt de données n'est jamais lue après avoir été écrite, et comment les équipes l'ont-elles découvert ?
Question ouverte : les pipelines continuent d'écrire des tables dont un tableau de bord ou un modèle avait autrefois besoin ; les statistiques cumulatives de PostgreSQL exposent le nombre de scans par table et l'heure du dernier scan, et d'autres moteurs conservent des historiques de requêtes, mais quelle part des tables s'est révélée non lue quand une équipe a regardé, comment les lectures internes au pipeline ont-elles été exclues, et qu'a-t-on fait de la réponse ?
-
Résoudre les sélections de date de Jev par rapport à un calendrier de référence explicite
Garder l'interprétation des dates auditable en séparant les parties de date sélectionnées dans un document des hypothèses de calendrier utilisées pour assembler une date exploitable.
-
Mener une revue de conception : période de commentaires, décideur nommé et décision consignée
Une revue de proposition a besoin d'une période de commentaires bornée, d'une personne ou d'un groupe nommé qui décide, d'une décision écrite (acceptation, rejet, report) avec ses raisons, et d'une règle de réouverture ; le processus RFC de Rust et le processus PEP de Python montrent la forme, et cette méthodologie l'adapte à une seule équipe.
-
Un journal météo domestique : ce qu'enregistre un capteur de jardin ou de balcon et pourquoi il diffère de la station officielle
Un journal météo domestique n'est comparable à d'autres relevés que si l'exposition du capteur est consignée par écrit : le Met Office mesure la température de l'air dans un abri Stevenson naturellement ventilé à 1,25 m au-dessus du sol, tandis qu'un capteur sur un mur, sous un avant-toit ou au soleil mesure son propre environnement ; l'article décrit les colonnes du journal, la description de l'exposition et la série d'écart domicile moins station.
-
Construire un harnais d'évaluation pour les tâches d'agent
Un harnais d'évaluation d'agent exécute un ensemble de tâches fixe contre un environnement réinitialisable, note l'état final plutôt que la transcription, répète chaque tâche plusieurs fois et rapporte pass^k à côté de pass@k ; sans cela, les changements de prompt et de modèle sont jugés à l'anecdote.
-
Contenir la propagation d’un ver npm entre postes de développement et comptes de publication
ChainDrop et la compromission de Tensorlake montrent comment le vol d’identifiants à l’installation peut mener à des publications de paquets non autorisées. Le confinement doit couvrir l’exécution des dépendances, les droits de publication, la persistance dans les dépôts et les artefacts de build contaminés.
-
Après l'arrêt d'ingress-nginx : valider une migration parallèle vers Gateway API
La maintenance d'Ingress NGINX a pris fin en mars 2026. Utiliser les outils officiels de migration pour produire une ébauche de ressources Gateway API, repérer les comportements non pris en charge et valider un chemin de trafic distinct avant de basculer le trafic de production.
-
Budgétiser les coûts de modèle et d'outils par tâche
Réserver le coût estimé avant de commencer le travail et tenir compte des nouvelles tentatives, de la concurrence et des frais finaux incertains.
-
Un journal d'état des feuilles et d'observation de nuisibles pour plante d'intérieur, avec feuilles marquées et photographies fixes
Un protocole d'observation proposé pour les plantes d'intérieur : marquer trois feuilles par plante, photographier les faces supérieure et inférieure chaque semaine sur le même fond, consigner taches, état des bords, résidus, toiles et insectes visibles comptés selon un vocabulaire fixe, compter les feuilles tombées entre les visites, et garder les tentatives d'identification séparées des observations ; aucun traitement n'est indiqué.
-
S'orienter sur un hôte Oracle Solaris 11.4 inconnu quand on vient de Linux
Avant de modifier quoi que ce soit sur une machine Solaris, quelques commandes en lecture seule établissent la version exacte, la topologie CPU/mémoire et la zone (globale ou non) du shell, et signalent les habitudes Linux qui ne se transposent pas : shells, emplacement des outils, gestionnaire de paquets.
-
Microsoft Defender Antivirus sur Windows Server avec PowerShell
Get-MpComputerStatus, Update-MpSignature, Start-MpScan et Get-MpPreference permettent, en ligne de commande, de vérifier l'état, l'ancienneté des signatures, de lancer une analyse à la demande et de revoir les exclusions ; le principe du minimum d'exclusions s'applique, car chaque exclusion est une surface non analysée, et les détections figurent dans le journal d'événements Windows Defender et dans Get-MpThreatDetection.
-
Bases du fuzzing : entrées guidées par la couverture, corpus et tri des plantages
Un fuzzer guidé par la couverture mute des entrées, conserve celles qui atteignent du nouveau code dans un corpus, et rapporte des entrées en échec minimisées. Écrire de petites cibles déterministes qui vérifient des propriétés, amorcer et committer le corpus, exécuter du fuzzing court en CI et de longues sessions selon un calendrier, et conserver chaque entrée de plantage comme test de non-régression.
Lisible par machine : JSON