Home » FreeBSD » Migrate 32bit to 64bit (FreeBSD, GDBM) (Tag: )

Migrate 32bit to 64bit (FreeBSD, PostgreSQL) に続いて、単なるデータコピーで移行が完了しないケースに 1 つに GDBM (GNU dbm) があります。

現在メールフィルタの学習型データベースに bsfilter + gdbm を使用しています。このデータベースファイルが、互換性がありません。

32bit の環境で bsfilter mail_file とすれば即結果が返るにも関わらず、データコピーしただけの 64bit 環境では 完全に沈黙 します。

別の用途と事例では Invalid argument で先に進まないこともある様ですね。PostgreSQL 同様 dump -> restore する以外に方法がない様です。

#// dump

use GDBM_File;
use Fcntl;

    my $src  = 'src.gdbm';
    my $txt  = 'src.dump';

    my %str  = ();
    my $dbh  = tie (%str, 'GDBM_File', $src, O_RDWR|O_CREAT, 0600);
    my $line = '';

    foreach (keys %str) {
        $line .= $_ . "\t" . $str{$_} . "\n";
    }

    undef $dbh;
    untie %str;

    open WRITE, "+>$txt";
    print WRITE $line;
    close WRITE;
#// restore

use GDBM_File;
use Fcntl;

    my $txt  = 'src.dump';
    my $dist = 'dist.gdbm';

    my %str  = ();
    my $dbh  = tie (%str, 'GDBM_File', $dist, O_RDWR|O_CREAT, 0600);

    open READ, "<$txt";
    my @line = <READ>;
    close READ;

    foreach my $line (@line) {
        chomp $line;
        my ($key, $value) = split(/\t/, $line);

        $str{$key} = $value;
    }

    undef $dbh;
    untie %str;

Random Select

ロマンスロード (3)
久高島 (No. 2 – カベール岬) の続きです。カベール岬から南下すると、小さな看板が見えて来ました。"ロマンスロード" の下に書いてある Romansu Road
JTA961
かねてから最も行きたい沖縄の離島が与那国島でした。"Dr. コトー診療所" とそのロケ地巡りや海底遺跡がその最たる理由で、共感出来る人が出て来ても必ずしも同行出来るとも限らないしと
ボンディ 通信販売 パッケージ (2)
欧風カレー ボンディ (チキンカレー レシピ) で東京出張に来たスタッフが、ボンディを恋しがっている話を小耳に挟みました。一方、ホームページ 欧風カレー ボンディ で通信販売をしていることも気が付いて
ESXi 5.1 Install - NG (PCPU no heartbeat)
VMware ESXi 5.1 Install (Boot failed) でも思わぬエラーに出くわしましたが、さらにまたパープルな画面が出現しました。インストールが完了し、シャットダウン完了前の上記
2013 年産ダイヤモンド麦芽の恵み 初仕込 (12)
2013 年産ダイヤモンド麦芽の恵み 初仕込 ザ・プレミアム・モルツ (Part 1) の続きです。2013/12/09 に終了した "絶対もらえるキャンペーン" で、2014/0
トロピカルビーチ (4)
沖縄本島 (No. 28 – トロピカルビーチ de ビーチパーリー 準備) の続きです。トロピカルビーチ の設備予約で、Web ページでは書かれていない以下の事項を確認しました。予約可能
エクストラコールド BAR (1 DRINK TIME)
エクストラコールド BAR には、出来た年に長蛇の列に並んで行きました。一番搾り FROZEN GARDEN で少し火がついたので、久しぶりに訪れてみました。普通の時間に行っても面白くないので、今回は
海鮮天丼 (3)
ここ最近の出張では必ず訪れるランチスポットの 1 つが 海鮮食堂 太陽 (ティーダ) です。片手で収まらない程来ているのに、今だ "エビだけ天丼" しか食べたことがないことにふと気
沖縄食彩 てぃ?だかんかん (2)
沖縄食彩 てぃ?だかんかん (Part 1) の続きです。乾杯で喉を潤した後は、早速おつまみミーティング開始です。鮮度の良い状態で入荷していると聞いた海ぶどうに、1 人 2 皿は行こうねと半分本気で事
豆腐そば (2)
まだ初めて沖縄出張で訪れた当初に一度連れて行ってもらったことがある、これも地元では有名な 高江洲そば ですが、前々回の出張時までの 6 年近くは好んで訪れませんでした。まだ沖縄そば自体に慣れていない時
Valid HTML5 Valid CSS3 Another HTML Lint