vbirding 发表于 2010-10-16 13:13

informix table的extent size有极限值没?

OS:HP-UX
数据库:Server Version 11.10.FC2
有一张tlf_file表,数据5千多万笔。extent大小如下
   。。。。。
    tlf910 char(1)
)extent size 1024000 next size 1536000 lock mode row;
onechk -pt qklh0_tlf:tlf_file_bak的结果如下:
qklh0_tlf:informix.tlf_file_bak 的 TBLspace 報表

    實體位址                     30:5023814
    建立日期                     08/15/2010 02:59:05
    TBLspace 旗標                  802      列鎖定
                                              TBLspace 使用 4 位元的位元-映射
    列尺寸的最大值               519
    特殊欄的數目                   0
    鍵數                           0
    範圍數目                     6
    現有的序列值                   1
    Current SERIAL8 value          1
    Current REFID value            1
    Pagesize (k)                   2
    第一個範圍大小               512000
    下一個範圍大小               768000
    配置的分頁數目               16777215
    使用的分頁數目               16777215
    資料分頁數目                   16773053
    列數                           50319159
    分割區 partnum               7353298
    分割區 lockid                  7353298

    範圍
             邏輯分頁          實體分頁      尺寸 Physical Pages
                     0      32:1132138   3584000    3584000
            3584000            34:3   4608000    4608000
            8192000            36:3   4608000    4608000
             12800000            38:3   3072000    3072000
             15872000      38:3665467      768000   768000
             16640000      38:4871569      137215   137215
          索引 tlf_001 區段在DBspace dbs03 中

    實體位址                     30:5023846
    建立日期                     08/15/2010 05:51:19
    TBLspace 旗標                  802      列鎖定
                                              TBLspace 使用 4 位元的位元-映射
    列尺寸的最大值               519
    特殊欄的數目                   0
    鍵數                           1
    範圍數目                     1
    現有的序列值                   1
    Current SERIAL8 value          1
    Current REFID value            1
    Pagesize (k)                   2
    第一個範圍大小               22887
    下一個範圍大小               34330
    配置的分頁數目               160207
    使用的分頁數目               158254
    資料分頁數目                   0
    列數                           0
    分割區 partnum               7353330
    分割區 lockid                  7353298

    範圍
             邏輯分頁          實體分頁      尺寸 Physical Pages
                  0      32:4854473      160207   160207

          索引 tlf_002 區段在DBspace dbs03 中
oncheck检查的结果来看,extent数据量也才6个啊,但是现在就是insert 不进数据
报没有可用的extent。处理方法我知道,现在就想知道一张表的extent size有极限值没?
我看这张表的extent size有1GB多,extent数量也就6个,可是就不能用了。
揪心!!!
请大虾给指点下。

liaosnet 发表于 2010-10-16 23:02

本帖最后由 liaosnet 于 2016-09-14 14:10 编辑

OS:HP-UX
数据库:Server Version 11.10.FC2
有一张tlf_file表,数据5千多万笔。extent大小如下onechk - ...
vbirding 发表于 2010-10-16 13:13 http://bbs3.chinaunix.net/images/common/back.gif

    理论上是chunk的大小~chunk的大小自9.40开始就是4TB(受限于平台)

你这里需要告知不能插入数据的具体错误号,ISAM号,以便确认是什么原因(可能的原因是没有空间,达到dbspace限制等等)。

关于informix的限制,你可以查看${INFORMIXDIR}/releases/en_us/0333/ids_machine_11.10.txt (文件名可能有误)
你这个是达到限制了
    配置的分頁數目               16777215
    使用的分頁數目               16777215

vbirding 发表于 2010-10-18 08:52

回复 2# liaosnet


1、资料库qklh0_tlf在dbs03上,以下是各资料库dbspace的空间利用情况
dbs      total             free      used(%)
dbs01 150000.0 MB 88366.0 MB 41.0 %
dbs02 150000.0 MB 119278.0 MB 20.0 %
dbs03 150000.0 MB 88951.0 MB 41.0 %
dbs04 150000.0 MB 94497.0 MB 37.0 %
dbs05 150000.0 MB 103686.0 MB 31.0 %
logdbs 16000.0 MB 6000.0 MB 63.0 %
phydbs 8000.0 MB 7800.0 MB 3.0 %
rootdbs 2000.0 MB 1925.0 MB 4.0 %
tempdbs 4000.0 MB 3991.0 MB 0.0 %
同时也用onstat-d 查看dbspace的chunk文件,可利用空间还剩很多。
2、insert 数据的时候报136(ISAM号)的错误
3、/u/ids120/release/en_us/0333/ids_machine_notes_11.10.txt
这个文件也未见异常,以下是它的内容。


4、搞不懂,为什么才6个extent,dbspace剩余空间也够大,next extent size也够大啊
就是insert 不了数据。所以很想求个明白

liaosnet 发表于 2010-10-18 09:45

回复 3# vbirding


    输出 oncheck -pP   30 5023814
看下~~需要使用informix用户执行~

vbirding 发表于 2010-10-18 10:41

回复 4# liaosnet
位址             戳記   chksum nslots 旗標 類型         frptr frcnt 下一個   前一個
30:5023814       162141053 b2c3   5      802PARTN      216   18080      0
      插槽 ptr   len   flg
      1    24    92    0
      2    116   44    0
      3    160   0   0
      4    160   0   0
      5    160   56    0
插槽   1:
    0:0 70 33 d2008200270000   .p3R............
   16:0680 4c 66 e7 79000107 d00   ....Lfgy......P.
   32:0b b800 ff ff ff0 ff ff ff0 ff ef bd   ..8...........o=
   48: ff ff ff ff0 70 33 d22 ff cf 370001   .....p3R..O7....
   64:0000010000010000   ................
   80:010000295 22 a0 70               ........." p....
插槽   2:
    0: 71 6b 6c 68 30 5f 74 6c 660 69 6e 66 6f 72 6d   qklh0_tlf.inform
   16: 69 780 74 6c 66 5f 66 69 6c 65 5f 62 61 6b0   ix.tlf_file_bak.
   32: 7a 68 5f 54 57 2e 35 37 33 35 320               zh_TW.57352.....
插槽   3:
插槽   4:
插槽   5:
    0:00000 ad 86 6a0 36 b000 ea 603   .....-.j.60..j`.
   16:0 7d001 38 8030 c3 5001 86 a03   .}...8...CP... .
   32:0 f2 3001 be 8e 3b0 fd e801 d0 f5 91   .r0..>.;.}h..Pu.
   48:0 ff ff ff0000                           ................

liaosnet 发表于 2010-10-18 10:46

frcnt
1808
(每8字节可以描述一个extent)

这项表时,这个表的区段数还能扩展。。。并不可能会报extent不足这样的错误~

vbirding 发表于 2010-10-18 10:55

回复 6# liaosnet


    是啊,我也想不明白,觉得太奇怪了,难道是数据笔数过多?但是有些表上亿笔,也没出现这样的问题(extent size 也还没这么大)。
现在都把这张表重建了,extent size改成了2048000,不知道会怎么样?
现在从bak表里面塞数据呢。揪心ing

liaosnet 发表于 2010-10-18 10:58

本帖最后由 liaosnet 于 2010-10-18 11:05 编辑

回复liaosnet


    是啊,我也想不明白,觉得太奇怪了,难道是数据笔数过多?但是有些表上亿笔,也没 ...
vbirding 发表于 2010-10-18 10:55 http://bbs3.chinaunix.net/images/common/back.gif


    可以确定这个不是区段不能扩展的问题~

    不过有一点可以确定,不推荐使用11.10这个版本~建议升级到11.50xC7

    PS1:尝试在dbaccess中,手工插入一条记录试一下。。看是否还是报这样的错误。

vbirding 发表于 2010-10-18 11:11

回复 8# liaosnet

开始是用户反应过账不了,后面   dbaccess qklh0_tlf
执行以下sql:
load from 1.txt delimiter "|"
insert into tlf_file_bak;
结果就报136的错误,但是oncheck -pt查到tlf_file_bak才6个extent,而且extent size也那么大
所以很是不明白。

chiqieqie 发表于 2010-10-20 22:59

难道又是bug?
页: [1] 2
查看完整版本: informix table的extent size有极限值没?