タグ

ブックマーク / nulab.com (5)

  • MySQL5系クライアントと8系クライアント混在時に発生する現象 | 株式会社ヌーラボ(Nulab inc.)

    こんにちは、ヌーラボの中村です。BacklogのGitチームで開発やメンテナンス、その他諸々をやっています。記事ではMySQLクライアントのバージョンアップの際に出くわしたおもしろい挙動を解説します。 概要 MySQL 5.7サーバーへの接続について、MySQL5系クライアントからMySQL8系クライアントへのバージョンアップを検証していたところ、特定のクエリだけ実行結果が0件になる現象が発生しました。(あるPerlのプログラムで5系のクライアントをサポートしていない環境があり、やむを得ずアップグレードを実施しました) インターネットで検索すると、「クエリに空白を入れる」「改行を追加する」などおまじないのような解決方法が散見されましたが、そんなはずはないと思い調査を進めました。 調査したところ、原因は以下の3つが合わさったことによるものでした。 MySQL 5.7ではクエリキャッシュが有

    MySQL5系クライアントと8系クライアント混在時に発生する現象 | 株式会社ヌーラボ(Nulab inc.)
    suginoy
    suginoy 2023/12/16
  • PostgreSQL 11でALTER TABLE ... NOT NULL DEFAULTが簡単になっていた | 株式会社ヌーラボ(Nulab inc.)

    はじめに こんにちは。ビジネスチャットサービス Typetalkを開発・運用している吉田です。先日PostgreSQLでのALTER文をいかに無停止で安全に行うかという記事を公開しました。その中で以下のようにNULLを不許可にしたカラムを追加する際の注意点について述べていました。(参照 NULLを不許可にしたカラムを追加する) 新しいカラムを追加する際、NULLを不許可にしたいことがあります。その場合よく使われるのがALTER TABLE構文で同時に追加できるNOT NULL制約です。このNOT NULL制約をつけるためには、既存レコードにデフォルト値を設定する必要があるため、DEFAULT構文を同時に使用することになります。 ALTER TABLE todo ADD COLUMN completed BOOLEAN NOT NULL DEFAULT false; この構文は自動的に既存の

    PostgreSQL 11でALTER TABLE ... NOT NULL DEFAULTが簡単になっていた | 株式会社ヌーラボ(Nulab inc.)
    suginoy
    suginoy 2022/02/13
  • ヌーラボのサービスを支える動脈「 ジョブキュー 」の仕組みを紹介します! | 株式会社ヌーラボ(Nulab inc.)

    ニッポン一億総マイクロサービス化が進む昨今ですが、皆様いかがお過ごしでしょうか?ヌーラボでテックリードを務める馬場です。サービス間の通信はマイクロサービスを支える動脈とも言える、とても重要なファクターです。サービス間の通信手段としてヌーラボで利用している「 ジョブキュー 」の基と、利用例をご紹介します。 ふるえるぞハート!燃えつきるほどヒート!!おおおおおっ刻むぞ血液のビート! ジョブキュー とは何か? ジョブキューと聞いてなんだか難しいものと感じる方や、何が嬉しいのかわからない方もいらっしゃるのではないでしょうか? 簡単に言ってしまうと、ジョブキューとはキューに登録されたジョブを逐次実行するものです。 これはメッセージキュー(MQ / Message Queue) やタスクキューと呼ばれることもあります。 ジョブキューを構成する要素には以下のようなものがあります。 ジョブ : 何らかの

    ヌーラボのサービスを支える動脈「 ジョブキュー 」の仕組みを紹介します! | 株式会社ヌーラボ(Nulab inc.)
    suginoy
    suginoy 2017/07/26
  • Backlogの改善でわかった A/Bテスト を失敗に導くアンチパターン5選 | 株式会社ヌーラボ(Nulab inc.)

    ※ 数字は仮のものですが、改善率は実際の結果と大体合わせてあります。 これらの結果から「基的ではない機能を持つアイコンにラベルを合わせて表示すると、ユーザーの使用率が上がる可能性がある」ということがわかりました。特にウォッチ機能と編集機能の改善率の差にわかりやすく出ていますね。 現在はこの結果や更なるA/Bテストを基にしながら、他の画面の改善も進めています。 A/Bテストを失敗に導くアンチパターン 結局どっちがいいの? A/Bテストサイコー! なんでもいいからA/Bテストしたいぞ! ……と言いたいところですが、実際はそう簡単ではありませんでした。やってみて初めて気付いたり、改めて実感した知見から、A/Bテストを失敗に導くアンチパターンをいくつか共有します。 アンチパターン 1: 仮説を設定しない 仮説は、テスト内容を決めたり、結果を評価する際の判断基準になります。テストを行う前に仮説を設

    Backlogの改善でわかった A/Bテスト を失敗に導くアンチパターン5選 | 株式会社ヌーラボ(Nulab inc.)
    suginoy
    suginoy 2017/07/12
  • テスト駆動開発 (TDD) の第一人者、和田卓人(@t_wada)さんによる社内エンジニア向けセミナーが行われました! | 株式会社ヌーラボ(Nulab inc.)

    テスト駆動開発 (TDD) の第一人者、和田卓人(@t_wada)さんによる社内エンジニア向けセミナーが行われました! こんにちは!Meggyです。2017年6月9日(金)、ヌーラボのエンジニア向けに、 和田 卓人 さん( @t_wada さん)による テスト駆動開発 のセミナー・ペアプログラミング実習が行われました! 日のテスト駆動開発( 以下、TDD ) の第一人者である和田さんによるセミナーとあって、エンジニア陣はわくわく。当日は、福岡オフィスと京都・東京オフィスをオンラインで繋ぎ開催しました。 テスト駆動開発の第一人者、和田卓人(@t_wada)さん登場! テスト駆動開発 ( TDD :test-driven development ) とは、「①まず最初に、各機能に必要なテストを書き、②最低限の実装を行なったあとで、③コードを洗練させていく」開発手法のこと。コードを書いた後に

    テスト駆動開発 (TDD) の第一人者、和田卓人(@t_wada)さんによる社内エンジニア向けセミナーが行われました! | 株式会社ヌーラボ(Nulab inc.)
    suginoy
    suginoy 2017/06/16
    “和田さんは小ネタがお好きです。”
  • 1