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

松藤 限定古酒 43 度 (3)
沖縄本島 (No. 6 – 打ち上げ) で衝撃を受けた 松藤【限定古酒】43 度 を、東京に戻ってからも飲んでみようと考えていたところ、今も同僚でもある打ち上げのメンバーからプレゼントして
チキンカレー
欧風カレー ボンディ と出会って、御茶ノ水・神田神保町界隈では有名なエチオピアも通い出しました。欧風カレー ボンディ (ビーフカレー)欧風カレー ボンディ ("豪快" スペアリブ
VAIO Fit 13A (背面)
以前は stunnel 3.26 ベースの wstunnel が GUI 版として簡易に利用出来ましたが、昨今のサーバ側の標準的なバージョン OpenSSL 1.0 系との接続には向かないため、Win
iPhone 6 Plus (Gold)
iPhone 6 Plus (電話帳移行 "IS Contacts Kit") の続きです。電話帳の移行も終わったため、iTunes で同期およびバックアップを開始しました。iPo
Facebook, WordPress Logo
Facebook 向けに OGP (Open Graph Protocol) に対応する方が望ましいとした場合、やはり Valid にはなりません。HTML5 + RDFa ? 等も考えられますが、発
キャベツ野菜炒め + もやしニラ野菜炒め
最初にお断りしておきますが、ローソン (朝ごパンセット) 同様 "野菜炒めセット" は私の造語ですのであしからず (笑)シンプルな料理を極めて自分の味が出したいという想いが強いので
Preseved Flower
ほぼ社内向けな話ですが、入社前に希望のメールアカウント (メールアドレス @ 左側の文字列) を確認され、第 1 希望に rose と回答しました。(第 2 希望は普通に yasuhiro と回答)無
エビだけ天丼 (4 日目)
2012/05/28 から沖縄支店に出張に来ています。沖縄出張と言えば、My Select 日本一美味しいエビだけ天丼 を外す訳には行きません。が、なぜか 4 日連続で通っています。。1 週間に 28
タコライスチーズ野菜 (1)
沖縄本島 (No. 13 – 珈琲専門店 原点) の続きです。沖縄らしい食べ物のうち、タコライスは沖縄そば以上に好きな存在ですが最近ご無沙汰でした。どうせならと、それ以上にご無沙汰している
Drive Network Philosophy
FTP サーバプログラムはいくつか存在しますが、FreeBSD 付属の ftpd を拡張した BSDftpd-ssl の例を紹介します。FTP サーバに接続した際、サーバがクライアントに応答するメッセ
Valid HTML5 Valid CSS3 Another HTML Lint