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

久々にバッチVBSのお仕事

「テキストデータ内の特定の条件に合致するレコードを除去して再テキスト化して欲しい。」・・・なんて依頼を受けてしまった。 そのテキストデータをシステムに取り込む際、余分なデータは排除したいらしい。そんなのそのシステムの開発者に言えばいいのに・…

WindowsCE

ちょっと仕事でWindowsCEを使ったPDAに関わった。 初めてって訳じゃないけど、ちょっとクセがあるので余り関わりたくなかったんですが・・・まあ、仕事なんでしょうがないですかね。このWindowsCE、Windowsというだけあって、それなりに普通のWindowsと似て…

USB(鬱陶しいセキュリティ撲滅して欲しいの略)

お客さんから通報。「何か機械の通信がおかしい」・・・ってことで、現地に行ってきたわけですが。 今回の機械の通信に使用しているのは、USBケーブル。PC内部では、仮想COMポートとして認識するタイプの物で、アプリケーションとしてはMSCOMM(古いな俺)で…

でかログ

某お客さんにて、ソフトのインストール作業を行ったときのこと。なーんかサーバのディスクの容量がえらい少ないなぁ〜っと思って、少し中を調べてみた。サーバは主にDBサーバ(SQLServer)として使用していて、それ以上でもそれ以下でもないのだけど、はてそん…

でかパケット

ある機械のLAN通信が不安定と言うことで、ちょっとパケットを採取してみることになった。 いいよね、パケットキャプチャ。何かこう、自分みたいなエンジニアもどきが、いっちょ前のエンジニアっぽく見えるあたりが。バカハブやミラーポート付のスイッチング…

トランザクションで遊んでみた

何かデッドロックの一件でトランザクション分離レベルの変更を行ったけれど、イマイチこの分離レベルの詳細が分からないので、実験してみた。誰ですか、暇人だなんて言う人は。======================================================= 【実験環境】 ・Wind…

仮説仮説検証

てことで、昨日思い浮かんだ仮説を本来の業務中に時間サをとボって検証してみた。【検証方法】 昨日の2つのVBSの中で、トランザクション分離レベルをSerializableにして、同時に起動してみた。【結果】 現象再現した!\(^▽^)/いや〜、SQLServerのエラー…

仮説検証

トラブルは出なくなったものの、何かやっぱり納得いかんので、同じ環境を作って実験してみた。 【検証方法】 DBの構成を実際のものに合わせる。 UPDATE→SELECTを1トランザクション内で行いそれを1万回繰り返すVBSを2つ作り、同時に起動する。 【結果】 うん…

鍵の新たな死因……?

とりあえずこれまでの経緯をまとめると UPDATE文+SELECT文、もしくはUPDATE文+UPDATE文の組み合わせでデッドロックが発生した 更新ロックと共有ロックに共通する範囲があり、かつ同時に行われると発生する、変換デッドロックという現象だろうということが…

鍵は二度死ぬ

ということで、デッドロックトラブルの続き。前回のSELECTとUPDATEがかち合う理屈はわかった。UPDATE文は対象が1レコードだけだが、SELECT文はテーブル内のそれなりに広範囲のレコードが対象になるので、ロックがかち合う可能性はあるだろ〜な〜とも思う。で…

鍵は死んだ

デンっ!うん、日本語でおk ロック個のリソースって何よそれはともかく、どうやらついに出くわしてしまったようだ。デッドロック。デッドロックねぇ……デッドロックって何だっけ。ポン酢醤油のある家だっけ。 アレだよね、Aテーブル→Bテーブルの順で更新する…

ナチュラルキーでもいいじゃない・・・

あぁ、そういえばこんなブログ書いてたな・・・何か、4年も前の日記に最近謎のトラックバックがあったようで、ってか、まだログインできたんだこのブログ。凄いな、はてなさん。 前の日記の時代から既に転職しちゃってますけどね。あはは、若かったなぁ僕。って…