「intro」セッション(高田馬場)

久しぶりにイントロセッションに行く。7時頃行ってみると、座る席は見つかるが店内を歩くのは一苦労という程度に人が入っていた。クーラーが入っているはずなのに、人が多くて店内が暑い。ギターの北川さん発見。お久しぶりですね。今日のハウスベーシストは若いにいちゃんだが、この人はピアノも弾いていた(どちらも非常にうまい)。初めて見るドラムのおじさんがいたが、シャープでダイナミックな演奏をしていてかなりうまい。驚いた事に尺八でジャズに挑戦するプレイヤーがいる。かなりバップ的な演奏なので、もともとジャズ畑の人なのかもしれない。4,5人ボーカルの人がいて、私の演奏はインストより歌番のほうが多かった。普段ここのセッションはマスターの井上さんの他にアルバイトの店員がいるのだが、今日は井上さん一人で店を仕切っていて、大変そうだった。9時半ごろ帰る。今日はバラードの演奏が多かったせいか血豆もできず、疲労感もそれほど大きくない。

「B♭M7」セッション

先週に引き続き帯広「B♭M7」のジャムセッションに行った。9時に子供を寝かせ、ばーちゃんの軽自動車を借りて帯広市街へ行く。

B♭M7」はクラウンビルという雑居ビルの地下1階にある。マスターはベーシストの佐々木源市氏(源さん)だ。セッションのマスターも源さんがやるので「ベースがいなくてセッションがはじまらない」という事はない。

今日は先週より人数は少なめで、ベース3人、ドラム3人、ピアノ2人、サックス2人、トランペット1人、ギター1人だった。源さんはジャズベースのレッスンもやっていて、そこの生徒さんはセッションで演奏するのもレッスンの一環となっている。今日も生徒さんが自分のウッドベースを持ってきてセッションに参加していた。ベースが2本あったので、源さんとデュオで「Billie’s Bounce」を演奏させていただいた。私は他に、「黒いオルフェ」「Cantalope Island」「Bye Bye Blackbird」等を演奏して、1時頃帰る。また来年来ます。

「B♭M7」セッション

今子供と帯広に帰省している。今日は地元のジャズクラブ「B♭M7」に行ってみた。

夜8時頃、「B♭M7」があったはずの場所に行ってみると、あるはずの「B♭M7」がない。まさか、と思った。以前「add」のセッションに行こうとしたら、「add」がビルごと無くなっていた事があったからだ。近くの酒屋で話を聞くと、移転しただけだという事で、ほっとした。

「B♭M7」に行くとまだセッションは始まっておらず、客も私しかいなかったので、ママさんから去年亡くなったトランペッター浅倉功一氏の話を聞いた。浅倉氏は十勝のジャズを長年にわたってリードし続けた人で、車椅子に座りながらも精力的にライブ活動を続けていた。ベースの稔さんは浅倉氏が亡くなってからウッドベースは弾いていないという話だった。浅倉氏が「銀巴里」で日野皓正や山下洋輔とセッションしていたほどの人だとは知らなかった。浅倉氏とは一度だけ、「add」で共演させていただいた事がある。

9時を過ぎて人が集まり、セッションが始まった。ベースが私を入れて3人、管4人、ドラム3人、ピアノ4人、ボーカル1人、あとはギャラリーが数人いた。私が帯広で参加したセッションのなかでは最も人数が多いし、レベルも高かった。私自身は、"Beautiful Love", "Old Folks", "Satin Doll"を演奏し、11時半ごろ帰る。

Couldn’t fetch mysqli

私的メモ

あるオブジェクトをserializeしてunserializeすると「Couldn’t fetch mysqli」が発生した。

そのオブジェクトはあるテーブルに対するラッパーとして作成したもので、ページ内でこのように使われている。

・ページ1:インスタンス化して、serializeした後でセッション変数に格納
・ページ2:セッション変数から取り出して、unserializeし、使用

このクラスは基底クラスのコンストラクタでDBへの接続をおこない、メソッドではそのDB接続を使って読み書きをおこなう。エラーはページ2で発生する。

ラッパーオブジェクトのコンストラクタで作成されたmysqliオブジェクトはserialize->unserializeのなかでその接続を失うようだ(mysqliオブジェクト自体がSerializableではない模様)。そのためラッパーオブジェクトの基底クラスに__wakeup()を追加してunserialize時に再度mysqliオブジェクトを作成するようにした。

よーく考えたらそりゃそうだろうという話だ。ページをまたがる過程でDB接続を保持したスレッドが死んでいるんだから。

今日は朝から食欲がない。

昨日の夜も眠れず、2時半に起きて4時にまた床につき、6時前に起きて皆の朝食の準備をする。家族を送り出してからは何も食べずにひたすら横になる。ああまた調子が落ちてきたなと思う。こんな時は2,3キロ体重が落ちるが、やりすごしているとまた調子が戻ってくるものだ。こんな時は、何をするにも夕暮れの坂道を一人でとぼとぼと歩いているような気分になる。薬はちゃんと飲んでいるのだから、しばらくしたら元にもどるだろう。

牛乳がない。買い物に行って子供達を迎えに行くか。

unserializeされたオブジェクトのメンバ変数にアクセスするとphpファイルが頭から再実行される

私的メモ

ブラウザーを立ち上げなおしてから一回目の実行時にのみ、以下の現象が再現される

・phpページ1でユーザー定義のオブジェクトをserializeする
・phpページ2で、
          ・それをunserializeする
          ・unserializeされたオブジェクトのメソッドをコールして一部のメンバ変数が変更される
          ・オブジェクトのメンバ変数を参照しようとすると、phpページ2が頭から再実行される
          ・phpページ2は、以上の挙動をするまでの間、html出力はおこなっていない

バグなのか仕様なのかわからないが、html出力をおこなっていなければphpページ2は頭から再実行しても問題ないだろうとphp側が思っている節があるので、以下の修正にてとりあえず回避。

・phpページ2において、unserializeされたオブジェクトのメンバ変数を参照する前にダミー的なhtml出力をおこなう

phpのバージョンは5.1.6。

追記

htmlの出力をおこなってもページの再実行がおこなわれるケースあり。session_startが含まれる関数のコードの宣言をクラスの宣言が行われるコードの後に置くと、今のところ再現せず。前も今もsession_startの実行自体はクラス宣言の後なのに、不可解。

MySQL5

メモ

DBサーバーをMySQL5にアップデートした。引っかかった点

・森けい二の「けい」の字がphpMyAdminからエクスポートした時に文字化けを起こしていたので、インポート時にSQL文法エラーを起こす原因になっていた。「けい」の字はJIS X 0213の字なので取り扱い要注意。
・PHP側からの接続先コンピュータ名が「localhost」では通らなくなっていた。
・接続に失敗した場合の処理が不親切なのでリリースまでに改良する必要あり
・接続に失敗した場合、DBを選択できなかった場合、DBが選択できてもスキーマがなかった場合に分けて処理を変える必要あり。

今日は家族4人で大宮の「鉄道博物館」へ行ってきた。大宮に移る前の秋葉原にあった「交通博物館」には長男と何度か行った事があった。まだ長女が生まれる前で、電気街を見て、交通博物館で遊んで、アメ横で中華食材を買って帰るというのが定番パターンだった。大きな鋼鉄の機械を見るとそれだけで血が騒ぐのは男の子の特権なのかもしれない。

私が小さい頃、よく兄に連れられて電車に乗ってあるいた。当時国鉄のキャンペーンで「いい旅チャレンジ2万キロ」というのがあって、国鉄に2万キロ乗ると認定証がもらえるというものだった。鉄ちゃんの兄がこれを目指していて、路線の始発駅と終着駅で兄と駅名の入った看板の写真を証拠写真として撮るのは私の役目だった。広尾線に乗って広尾に行ったのは楽しい思い出だったが、赤字ローカル線としてもう廃止されている。

ここ数日子育ての事で色々な事があったが、いちおうのケリはついた。私もいつもの生活に戻ってきた。今回の一件は、自分の父親としての仕事をゼロから見直すいい機会になった、と自分に言い聞かせている。