H2Databaseを追っかけていたりしたブログ

H2 database のリリースノートを読んだりとか。

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

Version 1.3.174 (2013-10-19)

LIRSキャッシュ: LIRS cache: bugfix for caches that only contain non-resident entries. For in-memory databases, queries with a "group by" column that is also a hash index threw a RuntimeException. Improved error message for some syntax erro…

h2databaseを読む

H2のデータファイルの内部構造(PageStore)。データファイルは最低で5ページ。デフォルトのページサイズは8192バイト。指定可能なページサイズは64バイトから32768バイトで、2の累乗である必要がある。0ページ目はヘッダ。ページサイズと、書き込みバージョン…

loader周りの動作確認

下記のようにrequireの第一引数としてオブジェクトを渡してあげるとloaderのフェーズ毎にログ出力されるようになる。 require({$ trace:{$ "loader-inject":1, // turn the loader-inject group on "loader-define":0 // turn the loader-define group off }…

vimでdojoの開発をしやすくなる1行。

dojoというかAMDでモジュール化されているjavascript全般ですが。.vimrcに以下の行を追加。 autocmd FileType javascript setlocal includeexpr=substitute(v:fname,'$','.js','') | setlocal path+=;/ 下記のdefineにかいてあるような、モジュールID(パス)…

サジェスト機能を作ってみた

サジェスト機能作ってみようかなと思って調べてみたら、下記のエントリを見つけて、ああそうかとおもったので作ってみた。http://tech.naver.jp/blog/?p=367ソースコードは下記。Eclipseのプロジェクトになっている。gitのリポジトリを作ったときにフォルダ…

Version 1.3.173 (2013-07-28)

今回は、PgServer周りの修正が多かったです。PgServer経由で使っているところから、多数のパッチが寄せられたようです。あと、GEOMETRYデータタイプとspatial indexが追加になったのがさらっと書いてありますが、大きいのでは。これも、パッチの提供があった…

Version 1.3.172 (2013-05-25)

MVStore周りの修正が多いですが、オプティマイザでインデックスを選択する際にorder byの項目もコスト計算に含めるようになったりとちょっと面白い。あと、CREATE ALIASでGroovyが使えるようになったというのは、結構面白いのではないかと。 参照整合性: 参…

Dojoのモジュールについて 5 dojo/dom-construct

dojo/dom-construct dojo/dom-constructはDOM組み立てるためのdojoのAPIです。dojo内では、domConstructという名前で使っている事が多いようです。 toDom 文字列からDOMノードを構築します。不正な文字列だった場合にはそのまま文字列が返ってきます。引数説…

Dojoのモジュールについて 4 dojo/dom-class

dojo/dom-class dojo/dom-classはDOMのclassを操作するためのdojoのAPIです。dojo内では、domClassという名前で使っている事が多いようです。 containes 対象のDOMに指定したクラスが設定されているかをtrue/falseで返します。引数説明Object/string対象のdo…

Dojoのモジュールについて 3 dojo/dom-attr

dojo/dom-attr dojo/dom-attrはDOMの属性を操作するためのAPIを定義しています。dojo内では、domAttrという名前で使っている事が多いようです。 get/getNodeProp どちらも指定したDOMの属性を取得できます。何が違うかと言うと、getは明示的に設定された属性…

MVTableEngineを使ってみた

1.3.171からExperimentalながら使用可能になったMVTableEngineを使ってみる。更新系はまずまずですが、今のところ参照は大分遅いです。すでにいくつか不具合が発見されては直ってしている状態ですし、今後に期待です。MVTableEngineが安定すれば、MultiThrea…

Version 1.3.171 (2013-03-17)

久しぶりにリリースされました。今回は、MVTableEngineがExperimentalとはいえ使えるようになったのが特筆すべき点でしょうか。 Security: TCP serverがいくつかのケースでアクセス権限による制御を正しく行っていなかった。これは"tcpAllowOthers"フラグを…

Dojoのモジュールについて 2 dojo/dom

dojo/dom dojo/domはコアとなるDOM APIを定義しています。定義されているのはbyId/isDescendant/setSelectableの3つの関数です。byIdはよく使うと思いますが、あとの二つはそれほどでも、という感じです。サンプル。 <html> <head> <meta charset="utf-8"> <title>Tutorial: Hello Dojo!</title> </head> <body> <div id="a1"> <div id="b1"> <span id="c1">this is </span></div></div></body></html>…

Dojoのモジュールについて 1 dojo

Dojo Toolkitのモジュールについて、ざっくり見ていきます。結構細かく分かれてます。まず、大きく3つのパッケージ(dojo/dijit/dojox)に分かれます。 dojo Dojo Toolkitのベースとなるコアパッケージです。結構あるな...と漠然と思っていましたが、改めて数…

dojo toolkitやってみる 4

モジュールを作ってみます。以下のような構成です。sample7.html <html> <head> <meta charset="utf-8"> <title>Tutorial: Hello Dojo!</title> </head> <body> <h1 id="greeting">Hello</h1> <script src="dojo/dojo.js" data-dojo-config="async: true"></script> <script> require(['ysobj/hello','dojo/domR…</body></html>

dojo toolkitやってみる 3

dojo/aspectの3つの関数のうち、aroundを使ってなかったので使ってみる。 <html> <head> <meta charset="utf-8"> <title>Tutorial: Hello Dojo!</title> </head> <body> <h1 id="greeting">Hello</h1> <h1 id="greetingJa">こんにちは</h1> <script src="dojo/dojo.js" data-dojo-config="async: true"></script> </body></html>

dojo toolkitやってみる 2

dojoのドキュメントを読んでいたら、dojo/aspectなんていうAOPのためのモジュールがあったので試してみます(Javaではおなじみですね。他の言語でどうなのかよく知りません) <html> <head> <meta charset="utf-8"> <title>Tutorial: Hello Dojo!</title> </head> <body> <h1 id="greeting">Hello</h1> <h1 id="greetingJa">こんにちは</h1> </body></html>

dojo toolkitやってみる 1

dojo toolkit は、基本的なDOM操作や配列の操作、イベントはもとより、UI部品やグラフ、そしてモジュール化の仕組み、ビルドツールまでそろったオールインワンのJavaScriptのライブラリです。ただあまり日本語情報は多くなく、また、ここ数年で、内部構造の…

1行でcsvファイルの中身を並び替える

csvファイルの中身を、ある項目の昇順に並び替えたいんだけど...ありがちな話ではありますが、シェルとかでやろうとするとちょっと手間です。Excelが入っていればそれでもいいですが、javaとh2のjarがあれば、ワンライナーで行けます。 java -cp h2-1.3.168.…

ltsvなログをSQLで集計する

javaのltsvなパーサー見当たらなかったから作ってみた、と思ったらもうあった。こんにちは。でも、SQLでltsvを操作できるってのは無いだろうと言うことで、まぁ。 package com.karatebancho.h2tools; import java.io.BufferedReader; import java.io.File; i…

MVStoreについて

h2の次期ストレージサブシステムとして使われる予定のMVStoreのドキュメントが、公式に上がっていました。http://h2database.com/html/mvstore.html類似のプロジェクトとして、LevelDBやkyoto cabinet、Berkeley DB Java Edition、SQLite、MapDBなどが挙げら…

kuromojiとマルコフ連鎖で格言を生成する

マルコフ連鎖と、格言や本日の占いのたぐいは相性がいいのではと思って、kuromojiを使って、ちょっと書いてみた。senを使ってベイジアンフィルタを書いてみたときも、こんなに簡単に使えるのかと感心したのだけれど、kuromojiだと辞書も同梱なので、より一層…