DBのマイグレーションが上手くいかない
問題
マイグレーションしようとしてもエラーが出る
$ docker-compose -f ./migration-docker-compose.yml run liquibase migrate db db_migration.yaml [DEBUG] db_migration.yaml Unexpected error running Liquibase: Could not acquire change log lock. Currently locked by e2463b55fa2d (172.18.0.7) since 9/26/18 3:53 AM
解決
DELETE FROM DATABASECHANGELOGLOCK;
Git リモートにあるブランチをローカルに持ってくる方法
# リモートにあるブランチを確認 git branch -a # 持ってきたいブランチをfetch git fetch origin remote-branch # checkout git checkout -b new-branch origin/remote-branch
DOMとは
DOM
DOMは「Document Object Model」の略
HTMLやXML文書をプログラムから利用するための仕組みのこと
DOMはツリー状の構造で、HTML文書にアクセスして情報を得たりするためのもの
Node
ツリー状の構造は、結束点や末端のことをNodeという
DOMでは、Nodeのことをelementと呼ぶ
同期処理・非同期処理とは
同期処理
普通プログラムは、上から順番に処理を行う
処理1
↓
処理2
↓
処理3
処理を終わるまで待って次に進む方式を同期処理という
非同期処理
「非」同期処前理は、同期処理ではないということ
したがって、非同期処理とは、前の処理が終わる前に次に進む方式
時間のかかる重たい処理でよく用いられる
時間差で実行される処理には、コールバック関数を指定しておく
コールバック関数とは、処理が終わった時に呼び出される関数のこと
Git リポジトリのスリム化
容量の確認
リポジトリをクローン
git clone git@github.com:sample/sample.git
ガベレージコレクター
# プロジェクトへ移動 cd sample # 全体の容量を確認 du -sh .git/objects # ガベレージコレクター git gc --auto
gc auto
コマンドは大体の場合何もしないそう
約 7,000個もの緩いオブジェクトがあるか、または50以上のパックファイルがないと、Gitは実際に gc コマンドを開始しません。
git_find_big.shをダウンロード
git_find_big.sh
git_find_big.shをプロジェクト直下に移動させる
# 権限変更 chmod 777 git_find_big.sh
容量の多いファイルを順番に表示
表示件数を変えることができる
objects=`git verify-pack -v .git/objects/pack/pack-*.idx | grep -v chain | sort -k3nr | head -n 20` objects=`git verify-pack -v .git/objects/pack/pack-*.idx | grep -v chain | sort -k3nr | head -n 100`
git_find_big.shを実行
git_find_big.sh All sizes are in kB's. The pack column is the size of the object, compressed, inside the pack file. size pack SHA location 592 580 e3117f48bc305dd1f5ae0df3419a0ce2d9617336 media/img/emojis.jar 550 169 b594a7f59ba7ba9daebb20447a87ea4357874f43 media/js/aui/aui-dependencies.jar 518 514 22f7f9a84905aaec019dae9ea1279a9450277130 media/images/screenshots/issue-tracker-wiki.jar 337 92 1fd8ac97c9fecf74ba6246eacef8288e89b4bff5 media/js/lib/bundle.js 240 239 e0c26d9959bd583e5ef32b6206fc8abe5fea8624 media/img/featuretour/heroshot.png