2014年9月16日火曜日

InfiniDBにロードしている時に ERROR 122 (HY000): CAL0006: IDB-2008: The version buffer overflowed. と言われた

fifoファイル使ってごりごり流してたら怒られた。

mysql> LOAD DATA INFILE '/data/tmp/fifo' INTO TABLE infinidb_table
ERROR 122 (HY000): CAL0006: IDB-2008: The version buffer overflowed. Increase VersionBufferFileSize or limit the rows to be processed.

VersionBufferFileSizeを上げるのはいいんだけど、どれくらいが適正なのか、何をするパラメーターなのか、そもそもどこで設定するのかとかいろんな情報が出てこなくて困った。

とりあえず上げ方。


$ /usr/local/Calpont/bin/calpontConsole

InfiniDB> getSystemConfig
getsystemconfig   Tue Sep 16 11:35:41 2014

System Configuration

SystemName = calpont-1
SoftwareVersion = 4.6.0
SoftwareRelease = 1
ParentOAMModuleName = pm1
StandbyOAMModuleName = unassigned
NMSIPAddr = 0.0.0.0
ModuleHeartbeatPeriod = 10
ModuleHeartbeatCount = 3
DBRootCount = 1
DBRoot1 = /usr/local/Calpont/data1
DBRMRoot = /usr/local/Calpont/data1/systemFiles/dbrm/BRM_saves
ExternalCriticalThreshold = 90
ExternalMajorThreshold = 80
ExternalMinorThreshold = 70
MaxConcurrentTransactions = 1000
SharedMemoryTmpFile = /usr/local/Calpont/data1/systemFiles/dbrm/CalpontShm
NumVersionBufferFiles = 0
VersionBufferFileSize = 2
OIDBitmapFile = /usr/local/Calpont/data1/systemFiles/dbrm/oidbitmap
FirstOID = 3000
TransactionArchivePeriod = 10

InfiniDB> setSystemConfig VersionBufferFileSize 4
setsystemconfig   Tue Sep 16 11:36:10 2014

   Successfully set VersionBufferFileSize = 4

InfiniDB> exit   Tue Sep 16 11:36:11 2014
Exiting the Calpont Command Console

ところでこれ、再設定したあと再起動とか要るのか要らないのかもよくわからん。

ちなみに、1でダメで2に変えてもまだダメだったので4に変えたところ。



【2014/09/16 12:34】
512まで上げても改善の兆しが見られなかったので/etc/init.d/infinidb restartで再起動したら上手くいった。

# /etc/init.d/infinidb restart
Shutting down InfiniDB Database Platform
Starting InfiniDB Database Platform

# cc

Calpont InfiniDB Command Console
   enter 'help' for list of commands
   enter 'exit' to exit the Calpont InfiniDB Command Console
   use up/down arrows to recall commands


Active Alarm Counts: Critical = 0, Major = 0, Minor = 0, Warning = 0, Info = 0

Critical Active Alarms:

InfiniDB>
InfiniDB> getSystemConfig VersionBufferFileSize
getsystemconfig   Tue Sep 16 12:27:45 2014

   VersionBufferFileSize = 512

再起動しても揮発せずに残ってるのね。ってかmysqld(だけでいいのかわからんけど)の再起動が必要って言ってよ。。


【2014/09/16 19:25】
ざっと見、InnoDBでいうところのInnoDB Buffer Pool Sizeに近いんだかどうなんだかよく判らないような感じで、1~4Gくらいまで上げても良さそうなこと書いてあるけど、だったら初期値の1は何なんだ。。

http://infinidb.co/community/how-to-change-location-of-temp-directory


【2014/09/17 16:11】

ファイル見つけた。

# pwd
/usr/local/Calpont/data1

# ll
total 4198416
drwxr-xr-x 3 root root       4096 Sep 12 14:36 000.dir
-rw-r--r-- 1 root root          0 Sep 16 18:07 OAMdbrootCheck
drwxr-xr-x 2 root root       4096 Sep 17 16:02 bulkRollback
drwxrwxrwt 4 root root       4096 Sep 12 14:32 systemFiles
-rw-r--r-- 1 root root 4294967296 Sep 17 16:10 versionbuffer.cdf

0 件のコメント :

コメントを投稿