最近、困ったことに伝票が消えてなくなることがある。受注伝票だったり、売上伝票だったりする。原因がよくわからなかったのだが、たまにフォームが開かないことがあり、フォームのレコードソースにしているクエリーを直接開こうとしても開かない。どうもAccessから投げたクエリーがサーバーで止まっているようだ。

伝票が消えてしまうのも、両建て(売上、仕入の起票を一度にする)伝票を修正する場合、一端削除して、同一伝票番号で再発行する手順にしているので、伝票を削除した後、再登録するところで、クエリーが実行されなければ、伝票が消えてしまう。よくわからないのだが、AccessからODBCでPostgresqlのテーブルを操作する場合、同期処理されているとも思えず。一方的にAccessから投げたクエリーが順番に処理され、途中でクエリーが実行されなかった場合、Accessでエラー表示が出ず、処理が中断されてしまっているのでは。

結果として、両建伝票修正時、エラー表示がなく、伝票が消えてしまうのではないかと思った。対策としてサーバーを更新することにした。2012年12月に更新してまだ3年半。少し早いのだが、仕方ない。自動Vacuumされているのか、疑って見たりしたが、pgAdminの統計情報をみると、定期的にVacuumされているようだった。

下記のような構成で更新した。

<PC本体>
(株)セブンアールジャパン
http://pc-seven.jp/
基本構成: SR-ii7-7044C
CPU: Corei7-4790
マザーボード: ASRock H81M-HDS
メモリー: NB DDR-3-1600 8GB(4GB、2枚)
HDD: SSD 東芝製128G、2個
価格: 96,904円(税込み)

<OS>
CentOS7
http://ftp.riken.jp/Linux/centos/7/isos/x86_64/CentOS-7-x86_64-Minimal-1503-01.iso

<PostgreSQL>
postgresql-9.4.4.tar.gz postgresql-9.4.4.tar.gz

1.PC本体
OS無しでカスタマイズの範囲が広い、セブンアールジャパンで購入した。今回で2回目だ。クレジットカード払いだと、手数料?が4000円くらいかかってしまうので、支払方法は振込み。
HDDはSSD、2枚挿しにした。以前、SSDは故障が怖くて、使うのをあきらめたが、今は自宅でも会社でもクライアントPCでSSDを使用していて、トラブル無しなのでまあ、大丈夫だと思う。
SSDを2枚にしたのは、OS+プログラム部分とデータ部分を分けたかったからだ。HDDの時はデータ部分を分けた方が高速と言われていたので、SSDでどうだがわからないのだが、128G、1枚だと少し容量が少ない気もして2枚挿しにした。
しかし、実は、PostgreSQLのPGDATAとして2枚目のSSDに設定するのにアズッタのだった。

自分としては、現在、購入可能なハードとしてはこれ以上は望めないスペックだ。
現状がCorei5なので、今回はCorei7にした。

2.OS
CentOS6にするかCentOS7どちらにしようか迷った。CentOS7は起動プロセスが大きく変更になり、チョット怖いところもあるが、一度インストールしたこともあり、なんとかなると思った。結局、少し困ったのはPostgreSQLの自動起動の設定のところだけだった。
Linuxのインストールでよくあるハードがらみの難点は全くなかった。CentOS6ではSATAが認識されず、BIOSでIDEモードに変更しなければならないし、オンボードのネットワークアダプターも自動認識されず、設定が必要だった。
CentOS7のインストールについてはトラブル無しだった。

3.PostgreSQL
一つ前のバージョン9.3でも良いかと思ったが、9.4も小番が4まで上がっていたので、9.4.4にすることにした。
インストールは最初yumでやってみたが、結局、うまくいかず、ソースからconfigure、makeした。