SQLite(sqlite3)で “no such table”

小ネタです。 SQLiteを使っていて "no such table" とエラーが出た場合、 DBファイル名の指定が空になっている、という凡ミスを起こしていないかを確認してみましょう。 ・・・ そういう凡ミスをしてしばし悩んだので… ...

アプリケーションサーバにポートを指定せずに起動すると?

最近、 Goで書かれたアプリケーションサーバが起動しない! ->原因: .env ファイルが欠けていた というドタバタがありました。 結局Goと関係ないですが、この時、 「あまりGoに慣れてないのでGoの問題かと…」「DockerまだよくわかってなくてDockerの問...

GitLab 9.1.2 (MySQL) を 11.4.0 (PostgreSQL) にアップグレード

弊社ではかなり前からGitLab(CE)を自社環境で運用しているのですが、ふと気付くと、バージョンがだいぶ先に行ってしまっていました。 とくに最近のバージョンでは Auto DevOps なども使えるようになっていたりするので、さすがにそろそろキャッチアップしたいと考えた...

PDOでトランザクションを開始する場合の順序

ひさびさにPHPの話題です。 とあるフレームワークを使って書かれたソースコードを見ていて、次のような記述がありました。 try{ // トランザクション開始 // INSERT INTO … // コミット } catch(…) { // ロールバック }...

[Golang] [凡ミス] json.Marshal() の返り値が空になる

猛烈に凡ミスなので恥ずかしいのですが、やらかしてしばらく「???」となっていたので公開。 次のようなコードで json.Marshal() すると中身が空になります。 https://play.golang.org/p/8p56Yit9S5 type Hoge struct...

ChromeDriver の Capabilities を指定する

タイトル通り、ChromeDriverでのCapabilitiesの指定方法を見ていきます。 公式サイトはここです。 https://sites.google.com/a/chromium.org/chromedriver/...

[Golang] agoutiでSelenium WebDriverを使う

(Seleniumの説明は割愛します) GoのSelenium WebDriverクライアントにagoutiがあります。 GoDocもあり、わりとサクっと使えます。 問題はどうやってDesiredCapabilitiesを書けばいいのかがわかりづらいことなのです。...

シェルスクリプトのかわりにGoで書くようになるまで(その2)

前回のあらすじ: シンプルではないものをシンプルに「してしまう」ためにシェルスクリプトが利用されてしまっている場合がある 適切な対処を行なおうとすると、何を使おうともそれなりに用意しないといけない いちいち毎回最初から書く必要は無い...

GitLab 7から8へのアップグレードで発生した問題と解決

今回はGitLabの引っ越し&アップグレードの際に環境によって発生した問題とその解決法です。 (GitLabについての説明は割愛します) なお手元の環境はDockerイメージを使っているのですが、そのことは事態にさほど影響しません。 ...

シェルスクリプトのかわりにGoで書くようになるまで(その1)

シェルスクリプトを書くというのはシンプルで枯れた方法ではありますが、実際には、シンプル「である」ことよりも(そうすべきではないのに)シンプルに「してしまっている」場合が結構あります。 たとえばこんな例。 #!/bin/bash mysqldump databasename...

Golangのファイル配置&セットアップ例 2017/2版

Goで書きはじめて最初の壁は、実はファイルの配置なのではないでしょうか。 サンプル的に書いてみる場合もそうですし、テストとしてレポジトリを作ってみた際にどうしたらいいのかわからない、という場合があるかと思います。 2017/02現在、我々がなんだかんだで一番簡単だと考えて...

Golangのreturnではずかしい凡ミスにはまるの巻

ちゃんと理解していなかったのでハマったという類いのものです。 こんな感じの関数を書いたとします。 func hoge() (sub int) for _,row := range rows { if r.MatchString(row[0]) { return // <-...

GolangでCLIの場合にcobraを使うことにした件

最初はCLI用のフレームワークに codegangsta/cli を使っていました。 サクっと書けるのですけれども、ちょっとややこしいことをしようとした時に悩むんですよね。 ということで、もしかしたら他の方がいいのかなーなどと考えた次第。...

X-Forwarded-Forの中身はIPアドレスではない

知っている人からすると、何言ってんの、という話ではあるんですが。 とあるオープンソース製品で、おそらく誤解している人が書いたであろうコードにかなり振り回されたので、そこも含めて教訓として書いておきたいと思います。 と言っても、タイトルで出落ちなんですけどもね。...

データとしての「住所」のユニーク性(またはGoogleジオコーディングAPIで結果が得られないのはなぜか?)

たとえば「住所はユニークではない」と言ったとします。 何言ってんのこの人、という反応が返ってくるでしょう。 ユニークでなかったら郵便が届かない、と言われると思うのですね。 しかしそもそも「住所のユニーク性」とは、ということを考えた場合に、似て非なる2つの概念があると思わ...

1
2