2011-01-01から1年間の記事一覧

MySQLのreplication時に起こる、double free or corruption について

環境 OS CentOS 6.0 (動作はMac OS X 10.6.8 上の VMWare Fuction) MySQL MySQL-client-5.5.17-1.linux2.6.i386, MySQL-devel-5.5.17-1.linux2.6.i386, MySQL-server-5.5.17-1.linux2.6.i386, MySQL-shared-5.5.17-1.linux2.6.i386 (2011/10/26時点で最新)…

Capistrano(カピストラーノ)で sudo が使えない問題

CapistranoのGetting Startedを行なっていて、sudo が利用できない問題に直面しました。 実行環境 Capisranoを実行するサーバ OS CentOS6 OpenSSH OpenSSH_5.3p1, OpenSSL 1.0.0-fips 29 Mar 2010 Ruby ruby 1.8.7 (2011-06-30 patchlevel 352) [i686-linux]…

アジャイルサムライ他流試合に参加してきました

2011/09/18(日)、オラクル青山センターにて行われた「アジャイルサムライ他流試合」に参加してきました。運営してくださった皆様、場所を貸してくださったオラクル様、参加してくださった皆様、貴重な時間を本当にありがとうございました。イベントは最初か…

アジャイルが語る。価値あるソフトウエアを届けるために必要な12の価値観

私は日頃から「価値あるソフトウェアを提供したい」「開発スピードを向上したい」「顧客も開発者も幸せな環境を作りたい」、そう思いながら開発を行なっています。それらを達成するために必要だと感じているのが、”顧客とプロジェクトメンバー全員”で「価値…

あなたがプログラミングの時に利用しているフォントは?というアンケートをTwitter上でやってみた

タイトルのようなアンケートをTwitter上で行ってみました。10個回答が集まりました。もっと集まるかなぁと思ったのですが、意外と集まらないものですね…。やり方がまずかったのか、質問そのものが良くなかったのか・・・。とにかく、10個の回答を得ましたの…

Rails 2.3 で acts_as_paranoid を使ってみた

Railsで論理削除を行う方法の1つとして、acts_as_paranoidというプラグインがあるので、Rails2.3で試してみた。なお、rails3用にはrails3_acts_as_paranoidがあるようです。 acts_as_paranoidとは? データベースのテーブルのカラムに deleted_at を作って…

いまさら、RubyKaigi2011を振り返る

2011年7月16日(土) 〜 18日(月) に開催された、RubyKaigi 2011から、もう一ヵ月以上経つのですね。いまさらですが、RubyKaigi2011をつらつらと振り返り、感じたこととメモを残します。私はRubyKaigiに過去2回参加(2010年筑波、2009年東京)していて、今年で…

first time to use ruby-prof

What's ruby-prof profiler for ruby. would you see http://ruby-prof.rubyforge.org/ Install would you see http://ruby-prof.rubyforge.org/. I installed version 0.10.7. % sudo gem install ruby-prof Usage There are three ways of running ruby-pr…

Symbolic Link on Windows

What You can use Symbolic links, Hard Links, and Junctions on Windows. Insall(for 32bit) , How to use command download symlink-1.05-x86.cab uncompress move DIR of symlink-1.05-x86 to Your Path.(for example : C:\Documents and Settings\YourN…

Pipe Viewer : monitoring the progress

What Pipe Viewer is a terminal-based tool for monitoring the progress of data through a pipeline. Install(for i386) wget http://pipeviewer.googlecode.com/files/pv-1.2.0-1.i386.rpm sudo rpm -i pv-1.2.0-1.i386.rpm other version : http://en.s…

Customizing the MySQL Prompt

MySQL Prompt is default. mysql> I like this customizing that is [user name]@[host][selected database name], as follows. root@localhost[hoge]> Change the mysql> prompt using my.cnf or configration file for shell.for example .zshrc, as follo…

Autoload Path and Nest

I have tow files hoge.rb and baz.rb. app/models/hoge.rb class Hoge class Fuga Baz.new end end app/models/hoge/baz.rb class Baz end I have added the custom models to load path as follows.config/environment.rb config.autoload_paths += %W( #{…

簡単にload averageを上げるワンライナー

あるサーバのロードアベレージを高い状態で維持したかったのですが、JMeterなどでテストを作るのも面倒だったため、簡単に出来ないかなと思いやってみました。 ワンライナー for i in {0..9}; do nohup `while :; do echo 1 > /dev/null; done;` & done 上記…

Railsのfind_by_sqlとSTIについて

STI 時に find_by_sql で返すインスタンスのクラスについて調べてみました。activerecord-1.13.2 と activerecord-2.3.11 で挙動を調べました。 activerecord-1.13.2/lib/active_record/base.rb 427 # Works like find(:all), but requires a complete SQL s…

Rails2系でuse_transactional_fixturesを使うときの注意

テストは正しいと思うのに、何故か落ちる現象になりました。調べていたら、MySQLのMyISAMテーブルで use_transactional_fixtures が true にしていたことが原因であることが分かりました。 activerecord-2.3.10/lib/active_record/fixtures.rb use_transacti…

Ruby CGIのオフラインモード

Rubyのcgiには、オフラインモードがあり、コマンドラインから簡単にcgiを試すことが出来ます。 オフラインモードを使ってみる まずは、下記の記述があるファイルを作成します。ファイル名は hoge.rb とします。 require 'cgi' cgi = CGI.new p cgi.params オ…

Symbolでconstantize

Rails の active_support/core_ext/string/inflections.rb で Ruby の String が拡張されて constantize が使えて便利です。 % script/console Loading development environment (Rails 2.3.11) >> "Hash".constantize => Hash >> :Hash.constantize NoMetho…

MySQL の create index で Duplicate key name する条件

いつも、Railsのmigrationにまかせっきりの create index 構文で生成される index名 が重複エラーする条件ってなんだろう・・・ということで調べてみました。 テスト環境 MySQL 4.1.22 前提条件 hoges と fugas というテーブルがあり、それぞれ、idとnameと…

Rails2.3をMySQL4.xで使うときのRELEASE SAVEPOINTの問題

MySQL4系ではRELEASE SAVEPOINT をサポートしていないので、Rails2.3がMySQL4.xに向けて、RELEASE SAVEPOINTを使ってもエラーになるという話です。 実験環境 Rails 2.3.11 MySQL 4.1.22 エラーの再現 User.connection.transaction do User.connection.transa…

MySQLのSAVEPOINT と ROLLBACK TO SAVEPOINT と RELEASE SAVEPOINT

SAVEPOINTについて知らなかったので調べて、使ってみました。 SAVEPOINTとは トランザクションでセーブポイントを設定しておくと、ロールバックの際、セーブポイントまで戻れるというもの。 http://dev.mysql.com/doc/refman/4.1/ja/savepoints.html http://…

Rails勉強会@東京第60回に参加してきました

Rails勉強会@東京第60回に参加してきました。学んだことをメモします。 性能プロファイラ 笹田研の学生さんによるリアルタイムプロファイラの紹介がありました。「リアルタイム」なのが特徴です。rdocを実行してそのプロファイラをざーっと画面に出してデモ…

クリーンなコードはプログラマを豊かにする

これは、「理解することが書き直すことを意味するとき」から引用したグラフ。プログラマは何に一番時間を使っていると思う?「コードを新規に書くこと?」「コードを修正すること?」いやいや「コードを理解すること」。グラフでは「コードを理解すること」…

.vimrcと.zshrcで環境依存の設定を分ける方法

.vimrcや.zshrcで環境依存の設定があったりしますよね。例えば、文字コード。アップデートするたびに、各環境で書き換えるのも面倒ですので、環境依存の設定ファイルは別にしましょう。 .vimrc ファイルを2つ準備します。例えば、.vimrc と .vimrc.encoding…

RubyGemsパッケージを作ってrubygems.orgに登録してみた

作ったことなかったのでやってみました。 環境 OS Mac OS X 10.6.6 Ruby ruby 1.8.7 (2009-06-12 patchlevel 174) [i686-darwin9] RubyGems 1.5.2 gemcutter 0.6.1 サンプルGemを作る こちらを参考に作成します。gemの名前は japanrock_sample とします。 デ…

Rails2.3.10 に i18n を 文字コード EUC-JP で導入するメモ

i18n を 文字コード EUC-JP で Rails2.3.10 に導入するメモです。 実験環境 OS CentOS release 5.3 (Final) Ruby ruby 1.8.6 (2010-02-05 patchlevel 399) [i686-linux Rails Rails 2.3.10 i18n 0.5.0 文字コード EUC Rails2.3.10のデフォルトエラーメッセー…

svn の外部定義 externals を使ってみた

svn externals を使ったことがなかったので、使ってみました。 環境 OS MacOS X 10.6.6 Subversion 1.6.5 実験環境構築 ローカルにHogeとFugaという2つリポジトリを作って、HogeからFugaを外部定義してチェックアウト出来るようにします。 ## リポジトリを…

Rails2.3.10でrender_componentを使う

Rails2.3.10でrender_componentを使いたい。こちらには下記のように書いてある。 render_component goes from “deprecated” to “nonexistent” in Rails 2.3. If you still need it, you can install the render_component plugin. install % script/plugin i…

NatネットワークのVMWareFusionの起動イメージに外部からアクセスする(ポートフォワーディング)

環境 Mac Mac OS X 10.6.6 VMWare Fusion 3.1.2 構成例 Mac の IP 10.20.138.177 VMWare Fusion イメージのIP 172.16.243.130 設定 1. nat.confの編集 VMWareのnat.conf 編集して [incomingtcp] のフィールドに設定を加える。 sudo vim /Library/Application…

カラムA、B、Cが同じ値のレコード数を出力するSQL

もっとちゃんとした書き方があるとおもうのだけど、パッと思いついたのがこれだった。 もし、他のSQLの書き方があれば教えてくださいm(_ _)m データ構造例 テーブル名:demos id A B C D E 1 hoge fuga NULL mysql postgres 2 baz hoge foo bar mysql 3 hoge…