MySQL 6.0 最好先不要亂升

一個小小原因是因為 5.x -> 6.0 的話做一定會跟你說 .frm 已經壞了叫你修,
然後用 mysql_ugprade 跑下去跟你說修好了其實還是沒修好,
手動進去打 repair table xxx 怎麼打也還是顯示 corrupt 沒辦法修好,
雖然這個應該用 dump/restore 應該是搞得定,
但還有另一個更大的原因讓我不想升。

Read moreMySQL 6.0 最好先不要亂升

GCC 4.5 的 C++0x mode 還沒到堪用的程度

本文已作廢,心臟夠大顆的可以開了。

所以不要衝太快,
編大一點的程式遇到 list::sort(functor) 就炸了,
亂寫的範例:

Read moreGCC 4.5 的 C++0x mode 還沒到堪用的程度

Redmine 的 Repository Controls plugin

每個 SVN 檔案庫都可以透過 conf/authz 去控制哪些人可以讀寫哪些路徑的檔案,
一般來說如果有在用 Trac 或 Redmine 這類 web front-end 的都會希望能在 web UI 上控制,
不會還想要進到 shell 下做修改,
Redmine 的 Repository Controls plugin 就是在做這件事,
不過它的控制方法有點微妙的不同,
不像之前設 Trac 的時候是直接讓 Trac 指向那個 authz 檔做修改,
而是直接掛 Perl module 去讀 Redmine db 裡的設定來控制存取權,
只是這有一個麻煩之處就是沒辦法直接用 SVN 內建的機制,
寫那個 Perl module 的人要重新實作那個功能一遍。

Read moreRedmine 的 Repository Controls plugin

FreeBSD 的 pkg_delete 有時會 segmentation fault

可能是因為 ports 本身有一些檔案沒寫好導致讀到空字串吧,
gdb 進去看 pkg_delete 的 core 檔會發現死在 strcmp() 上,
不知道為什麼五六年前已經有人寫出了 patch 卻到現在還沒修正,
就算 ports 的 maintainer 有東西沒寫好,
套件管理工具本身也不應該直接 crash 掉吧?
每次砍光 ports 做全面更新的時候都會遇上個幾次。

Read moreFreeBSD 的 pkg_delete 有時會 segmentation fault

FreeBSD 的 lang/php5 (5.2.11) 是壞的

簡單說就是一個大地雷,
當然如果裝 php5-extensions 的時候不勾 mhash/mysql/mysqli 就不會有事,
但是一勾下去的話無論是 CLI 還是 Apache module 都難逃一死,
在 command line 下直接輸入 php 或 php -v 就 Segmentation Fault 了,
真不知道是哪個天才 commit 進去的,
已經這麼久了還是沒人報也沒人修。

Read moreFreeBSD 的 lang/php5 (5.2.11) 是壞的

續購 Enterprise Architect Corporate Edition

今天用 US$ 39 的價格續購了 Enterprise Architect Corporate Edition 的 Academic License,
基本上也是把學生證掃瞄給他們就可以了,
其實在蠻多國家要搞這個還得辦國際學生證,
但這家公司似乎掃了中文的他們看了也直接採信,
大概嫌麻煩或不差這個單一客戶吧,
另外他們的 sales 說要以教育授權續購的條件是必須在同一個教育單位,
換了的話好像就要重新買一次了。

Read more續購 Enterprise Architect Corporate Edition