2015年9月23日

sql_firewall 0.8.1をリリースしました

先月リリースした sql_firewall の修正版としてバージョン0.8.1をリリースしました。

sql_firewallの詳細については、前回の記事を参考にしてください。
0.8.1における修正点は以下の通りです。
  • Fix sql_firewall.c to suppress `unused-const-variable' warning on OS X.
  • Fix sql_firewall_import_rule() to check file status before importing a rule file.
  • Fix JumbleRangeTable() to jumble query with relation name instead of oid.
  • Fix JumbleExpr() to use function name on query jumbling instead of the oid.
  • Fix README to add the Compatibility section.
  • Add COPYRIGHT and ChangeLog.
sql_firewallは、クエリの種類を「クエリID」と呼ばれるハッシュ値を使って識別しています。

以前は、クエリIDの生成がテーブルや関数の OID に依存していたので、テーブルや関数の DROP & CREATE をすると、例えそれらの名前が変わらなくてもクエリIDが変わる、という現象が発生していました。(これは sql_firewall の元となった pg_stat_statements でも同様です)

バージョン0.8.1では、この点を修正し、テーブルや関数を作り直してもクエリIDが同一に保たれるようになりました。