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

猫喫茶 毛玉
沖縄にも増え続ける猫カフェで、飼い猫も同伴出来る 毛玉 に着きました。来店は 2 回目です。コーヒーゼリーがお勧めと K 君から聞きましたが、本日は売り切れとのこと。プリンにしてみましたが、これ、美味
瀬底大橋 (2)
沖縄本島 (No. 3 – 本部港 Part 2) の続きです。出発して 2 分程で、あっと言う間に瀬底大橋が迫って来ました。さらにまた 1 分程経過。渡ったことは 2, 3 度ありますが
FreeBSD Logo
Drive Network を利用しているお客様すべてのメールが メールゲートウェイ 構成図 Gateway3 から送信されるため、送信先によっては spam を受け取ったと解釈する場合もあり、Gat
鶏あぶりそば (中) + ジューシー
沖縄本島 (No. 21 – BACAR OKINAWA Part 2) の続きです。今回の旅行ではどこの沖縄そばを試そうかと考えた時、炙りソーキそばで有名な いしぐふー が気になり始め、
行き止まり ?
沖縄本島 (No. 24 – 瀬底大橋 工事中) の続きです。国道 449 号線 (本部循環線) から瀬底大橋向けに左折して渡り切ると 沖縄県道 172 号瀬底健堅線 に切り替わります。島
クリーミー生サーバー (11)
うまい ! がすごい。クリーミー生サーバー (Part 3) の続きです。まずはオーソドックスに、ザ・プレミアム・モルツ 350ml 缶を用意しました。飲み口を開けて本体向かって右側に向け、配管チュー
タコライス
すばや (野菜そば) から日を空けずに再び訪れました。今回は 14:20 過ぎと完全に時間を外して訪れたためか、他にお客さんはいませんでした。前回だけでなく初回にも感じましたが、2 回ともそばを食べ終
WS-C2960S-48TS-L (1)
今回は WS-C2960S-48TS-L の Cisco IOS 12.2 系と 15.0 系が混在している環境を、すべて現時点で最新の 15.2 系にアップデートする際のメモです。他の機種でも参考に
京の抹茶パフェ (2)
沖縄本島 (No. 17 – 宮良そば ふたたび) の続きです。mati-cafe (季節の京のお昼ごはん) で初めて訪れた 2011/12 以来 2 年半程経って久しぶりに訪れる機会が出
かつぎや担々麺 + 辛さ 5 (激辛)
かつぎや (かつぎや担々麺 辛さ 4) は 09/04 (木) にデビューしましたが、週明け月曜日に早速再訪しました。今度は辛さ 5 (激辛) に挑戦です。入口左手に券売機があります。ひっそり下の方に
Valid HTML5 Valid CSS3 Another HTML Lint