Background Image

FORUM

조회 수 8785 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄 수정 삭제

8.2.2버전의 디비를 8.4.0로 업그레이드 하기 위해서 unload를 받고.

해당 objects 파일을 loaddb하는 중에 발생한 에러입니다.

unloaddb 된 objects 파일의 크기는 1.7G입니다.
--------------------------------------------------------------------------------------

GC Warning: Header allocation failed: Dropping block.
GC Warning: Out of Memory!  Returning NIL!
CUBRID cannot allocate main memory and must halt execution.
The current transaction has been aborted.
Data integrity has been preserved.
Line 1374058:Your transaction cannot be rolled back since logging was ignored. Your database may be corrupted.
Line 1374058:Cannot create MOP with NULL OID.
Line 1374058:Cannot create MOP with NULL OID.
Line 1374058:Accessing deleted object -1|-16410289|-1.
Line 1374058:Accessing deleted object -1|-16410289|-1.

--------------------------------------------------------------------------------------
 

짐작해보건데.

free명령어로 메모리를 봤을때.

--------------------------------------------------------------------------------------

             total       used       free     shared    buffers     cached
Mem:       4029488    3916948     112540          0      12204     739104
-/+ buffers/cache:    3165640     863848
Swap:      8385920    1178740    7207180

             total       used       free     shared    buffers     cached
Mem:       4029488    3915212     114276          0      11368     760688
-/+ buffers/cache:    3143156     886332
Swap:      8385920    1187136    7198784

             total       used       free     shared    buffers     cached
Mem:       4029488    3916896     112592          0      10832     803200
-/+ buffers/cache:    3102864     926624
Swap:      8385920    1212416    7173504

             total       used       free     shared    buffers     cached
Mem:       4029488    3916700     112788          0      10388     838856
-/+ buffers/cache:    3067456     962032
Swap:      8385920    1230592    7155328

--------------------------------------------------------------------------------------

와 같이 buffers의 used값이 증가하다가 한계에 달해서 스왑이 일어날때 일어나는것 같습니다.

 

loaddb의 명령어중에 -c명령어를 통해서 중간 중간 커밋을 하고 해보려고했으나.

사용하는 db의 oid를 통해서 서로테이블간에 연결된것들이 많아서.

-c명령어로 하는경우 전체디비를 통체로 unloaddb해서 인지.

--------------------------------------------------------------------------------------

*** Committing the transaction ***
Line 29580767:"{NULL, 0, 0}" caused unique constraint violation.
Line 29580766:"{NULL, 0, 0}" caused unique constraint violation.
--------------------------------------------------------------------------------------


와 같은 아직 뒤에 테이블들의 값이 들어오지 않아서 유니크 값에 대한 문제가 발생합니다.

해서 -c명령어를 못쓰고 그냥 하려고해보았으나.

echo 30 >/proc/sys/vm/swappiness 으로 스왑이 덜 일어나도록 조정을 해도 결국엔

잡혀있는 메모리 4G를 넘어가면서 Out of Memory!  발생하게 됩니다.

어떻게 해결을 해야할지 몰라서 문의 드립니다.


 

  • ?
    이용미 2012.08.24 20:21

    안녕하세요. 질문 감사 드립니다.

    첨부해주신 오류로 보아, MOD 테이블에서 OID를 참조하는 컬럼에 NOT NULL, Unique 조건이 있는데, 해당 데이터가 삭제된 OID를 참조하여 발생하는 것으로 보입니다.

    발생 한 오류는 “-c” 옵션을 사용하기 전에도 발생했던 것으로 OID를 사용하는 환경에서 “-c” 옵션을 사용한다고 하여 발생하는 것이 아닙니다.

    해결 방법은 다음과 같습니다.

    1.     스키마 파일 백업(cp DB_schema DB_schema.org)

    2.     스키마 파일에서 MOP 테이블에 NOT NULL, Unique 조건 삭제(DB_schema 파일 수정)

    3.     -c” 옵션을 추가하여 데이터 로드 수행

    4.     오류 발생 테이블의 데이터 확인 후, 적절 값 입력 혹은 데이터 삭제

    5.     MOP 테이블에서 삭제한 NOT NULL, Unique 조건 추가

  • ?
    천상하늘 2012.08.24 23:52

    안녕하세요 말씀해주신것처럼 스키마를 수정하고 나서 -c옵션으로 로드를 했을때는

    Line 29580767:"{NULL, 0, 0}" caused unique constraint violation. 의 현상은 없었습니다.

    하지만 -c 옵션으로 해도 위에 언급한것과 같이 메모리가 계속 올라가고 스왑이 일어나는 순간 실패를 하게 됩니다.

    아래는 실행해본 로그입니다.

    -----------------------------------------------------------------------------------------------------

    메모리 현황

                 total       used       free     shared    buffers     cached
    Mem:       4029488    3901316     128172          0       3484     568288
    -/+ buffers/cache:    3329544     699944
    Swap:      8385920    1274512    7111408

                 total       used       free     shared    buffers     cached
    Mem:       4029488    3901708     127780          0       3528     568408
    -/+ buffers/cache:    3329772     699716
    Swap:      8385920    1274512    7111408

                 total       used       free     shared    buffers     cached
    Mem:       4029488    3901064     128424          0       3596     568080
    -/+ buffers/cache:    3329388     700100
    Swap:      8385920    1274512    7111408

                 total       used       free     shared    buffers     cached
    Mem:       4029488    3900676     128812          0       3652     568152
    -/+ buffers/cache:    3328872     700616
    Swap:      8385920    1274512    7111408

     

    스왑 당시 실패 로그.

    449000 instances committed
    450000 instances committed
    451000 instances committed
    452000 instances committed
    453000 instances committed
    GC Warning: Header allocation failed: Dropping block.
    GC Warning: Out of Memory!  Returning NIL!
    CUBRID cannot allocate main memory and must halt execution.
    The current transaction has been aborted.
    Data integrity has been preserved.
    Line 1374086:Your transaction (index 1, aaa@aaa|15528) has been unilaterally aborted by the system.
    Line 1374086:Cannot create MOP with NULL OID.
    Line 1374086:Cannot create MOP with NULL OID.
    GC Warning: Out of Memory!  Returning NIL!
    CUBRID cannot allocate main memory and must halt execution.
    The current transaction has been aborted.
    Data integrity has been preserved.
    Line 1374086:Your transaction (index 1, aaa@aaa|15528) has been unilaterally aborted by the system.
    Line 1374086:Cannot create MOP with NULL OID.
    Line 1374086:Cannot create MOP with NULL OID.


List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4444
1287 시간표현 문제 2 asteroid 2008.12.02 30265
1286 시리얼 생성 시 class_name, attr_name, started 컬럼 값을 변경하고 싶습니다. 1 file getpost 2023.11.01 111
1285 시리얼 업데이트 오류 2 file 초보 2010.03.04 9843
1284 시스템 구조도 문의 드립니다. 1 끌레도르 2015.07.21 5708
1283 시스템 부팅시 뜨는 팝업창 재질문 1 file 나이젤 2014.10.07 4693
1282 시스템 부팅시뜨는 팝업창질문 1 나이젤 2014.10.03 6991
1281 시스템 뷰 조회 성능 문의 4 bchlim 2020.12.22 165
1280 시스템 오류 코드 193 발생 1 file 규짱 2013.12.26 16168
1279 시스템 카탈로그 조회 외 1 f0081 2023.11.01 121
1278 시스템 카탈로그를 이용해서 FK 참조 테이블 및 컬럼의 정보를 확인하는 방법 3 ermekia 2019.05.29 655
1277 시스템 테이블 db_serial 복사 여부 2 왜안왔어 2019.04.16 112
1276 시스템 테이블 db_serial 에 추가 질문입니다. 1 왜안왔어 2019.04.12 316
1275 시스템 테이블의 db_serial 값 수정에 관한 질문 5 눈꽃 2009.10.27 12413
1274 시점 복구 test 문서 연람 방법 문의 5 file 공중정원 2019.07.26 303
1273 시점복구 왜 안될까요?? 1 kubrid 2019.07.20 256
1272 시퀀스 ( Sequence ) 존재? 2 송송이 2016.12.11 16953
1271 실 ip db서버 이중화 관련 질문 1 zexpand 2024.01.18 91
1270 실리콘 맥(M1, ARM) 큐브리드 매니저 지원 문의 1 Devin 2021.12.24 397
1269 실리콘 맥(M1, ARM) 큐브리드 매니저 지원 문의 2 큐유저 2023.01.09 228
1268 실시간 Insert처리 1 file 동해아빠 2011.10.29 12444
Board Pagination Prev 1 ... 131 132 133 134 135 136 137 138 139 140 ... 200 Next
/ 200

Contact Cubrid

대표전화 070-4077-2110 / 기술문의 070-4077-2113 / 영업문의 070-4077-2112 / Email. contact_at_cubrid.com
Contact Sales