Background Image

FORUM

조회 수 432 추천 수 0 댓글 5
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Linux 64bit 
CUBRID Ver.
CUBRID 10.1 (10.1.3.7765-265e708) (64bit release build for Linux) (Aug 22 2019 11:52:23)
CUBRID TOOL Ver.
CUBRID Manager 10.1.0.0007  (64bit)
응용 환경(API)
java 등 입력

* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.
에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


-------------- 아래에 질문 사항을 기입해 주세요. ------------------------------------------------------------------------


INSERT INTO cd001

(

TCKT_ID

, HIST_ORD

, EXT1_CD

, CRT_DT

, CRT_TM

, CRT_USR_ID

, MOD_DT

, MOD_TM

, MOD_USR_ID

)

values

(

  '20200210112858agent003'

, 1

, '0'

, to_char(sysdatetime, 'yyyymmdd')

, to_char(sysdatetime, 'hh24miss')

, 'agent003'

, to_char(sysdatetime, 'yyyymmdd')

, to_char(sysdatetime, 'hh24miss')

, 'agent003'

); {FAILED after 21 msec}

cubrid.jdbc.driver.CUBRIDException: Operation would have caused one or more unique constraint violations. INDEX pk_cd001(B+tree: 1|161792|161793) ON CLASS cd001(CLASS_OID: 0|223|21). key: {'20200210112835agent003', 1}(OID: 1|162194|87).[CAS INFO-172.17.0.241:30000,32,19799],[SESSION-7046],[URL-jdbc:cubrid:172.17.0.241:30000:ptcc:ptcc:********:?charset=UTF-8].


해당 오류가 간헐적으로 발생합니다.


오류 메세지에 나오는 키값은 이전에 사용했던 키값입니다.


쿼리는 신규키값으로 인서트를 하는데 오류는 이전 키값으로 오류가 나는건가요?


자동증가? 그것도 설정되어있지 않은 테이블이고 혹시 몰라서 테이블 삭제 후 신규생성을 해도 같은오류가 계속 나오네요.


큐브리드 매니저에서는 정상적으로 실행되는 쿼리입니다.

  • ?
    큐브리드_김주현 2020.02.13 09:17
    큐브리드를 이용해 주셔서 감사합니다.


    "오류 메세지에 나오는 키값은 이전에 사용했던 키값입니다". ==> 이전에 입력한 키값이라서 에러 발생되는 것입니다.

    "쿼리는 신규키값으로 인서트를 하는데 오류는 이전 키값으로 오류가 나는건가요?" ==> 신규 키값을 입력했는데 이전키값으로 insert되진 않습니다.

    위 에러 구문을 어디서 발췌하셨는지 모르겠지만, $CUBRID/log/sql_log에 보면 브로커별 수행한 질의문들이 있습니다.
    해당 위치는 브로커별 로 수행하는 질의문이 누적되는 경로입니다.

    테스트를 하시면서 브로커_sql문을 확인하시면서 코드단에서 binding값으 잘 못넘기는 것인지.. 아닌지를 해당 질의문에서 확인해 보시기 바랍니다.

    해당 파알에 binding값도 출력이 됩니다.

    감사합니다.
  • ?
    guloman 2020.02.13 10:28
    해당 증상과 동일한 증상이 나와서 말씀해 주신대로 브로커_sql문을 확인해봤습니다.
    바인딩된값은 정상적으로 들어갔습니다. 하지만

    execute_all error:-670 tuple 1 time 0.008, EID = 3

    에러가 나면서 롤백이되었습니다.

    쿼리 실행시 바인딩되었던 값으로 테이블을 조회해보면 KEY값이 중복되지 않습니다.
  • ?
    오명환 2020.02.13 13:17
    확인된 로그 부분 (바인드 값, 오류 메세지가 포함)을 올려주시면 답변드리는데 도움이 됩니다.
    해당 테이블에 trriger가 동작하는지도 확인부탁드립니다.
  • ?
    guloman 2020.02.17 10:41
    20-02-10 15:54:19.542 (190) execute_all srv_h_id 12 INSERT INTO ch001 ( tckt_id /*티켓ID*/ , cust_id /*고객ID*/ , call_id /*통화ID*/ , recd_id /*녹취키*/ , ref_id /*참조ID*/ , rcv_dt /*접수일자*/ , rcv_tm /*접수시간*/ , rcv_usr_id /*접수사용자ID*/ , ch_gb_cd /*접수채널구분*/ , sndr_cntct_infm /*연결전화번호*/ , call_gb_cd /*통화구분*/ , act_st_cd /*처리상태코드*/ , act_type_cd /*처리유형코드*/ , tckt_end_dt /*완료>일자*/ , tckt_end_tm /*완료시간*/ , act_lmt_dt /*처리한도일자*/ , ctg_lg_cd /*상담대분류코드*/ , ctg_md_cd /*상담중분류코드*/ , ctg_sm_cd /*상담소분류코드*/ , rdy_scnt /*>보류횟수*/ , suvy_yn /*설문조사여부*/ , cnsl_cs_vltn /*상담사례평가*/ , qst_cont /*문의내용*/ , act_cont /*처리내용*/ , agt_req_tm /*상담사요청시간*/ , call_strt_tm /*통화시작시간*/ , call_cnnct_tm /*상담시작시간*/ , call_end_tm /*통화종료시간*/ , acw_end_tm /*후처리시간*/ , crt_dt /*등록일자*/ , crt_tm /*등록시>간*/ , crt_usr_id /*등록자*/ , mod_dt /*수정
    일자*/ , mod_tm /*수정시간*/ , mod_usr_id /*>수정자*/ ) VALUES ( ? , ? , ? , ? , ? , to_char(sysdatetime, 'yyyymmdd') , to_char(sysdatetime, 'hh24miss') , ? , ? , ? , ? , ? , ? , '' , '' , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , ? , to_char(sysdatetime, 'hh24miss') , to_char(sysdatetime, 'yyyymmdd') , to_char(sysdatetime, 'hh24miss') , ? , to_char(sysdatetime, 'yyyymmdd') , to_char(sysdatetime, 'hh24miss') , ? ); INSERT INTO cd001 ( TCKT_ID /*티켓ID*/ , HIST_ORD /*이력순서 */ , EXT1_CD /*확
    장코드1*/ , CRT_DT /*생성일자 */ , CRT_TM /*생성시>간 */ , CRT_USR_ID /*생성사용자ID*/ , MOD_DT /*수정일자 */ , MOD_TM /*수정시간 */ , MOD_USR_ID /*수정사용자ID*/ ) values ( ? , 1 , ? , to_char(sysdatetime, 'yyyymmdd') , to_char(sysdatetime, 'hh24miss') , ? , to_char(sysdatetime, 'yyyymmdd') , to_char(sysdatetime, 'hh24miss') , ? );
    20-02-10 15:54:19.542 (190) bind 1 : VARCHAR (23)20200210155420agent003
    20-02-10 15:54:19.542 (190) bind 2 : VARCHAR (6)35148
    20-02-10 15:54:19.542 (190) bind 3 : VARCHAR (1)
    20-02-10 15:54:19.542 (190) bind 4 : VARCHAR (5)2007
    20-02-10 15:54:19.542 (190) bind 5 : VARCHAR (1)
    20-02-10 15:54:19.542 (190) bind 6 : VARCHAR (9)agent003
    20-02-10 15:54:19.543 (190) bind 7 : VARCHAR (6)11000
    20-02-10 15:54:19.543 (190) bind 8 : VARCHAR (1)
    20-02-10 15:54:19.543 (190) bind 9 : VARCHAR (2)1
    20-02-10 15:54:19.543 (190) bind 10 : VARCHAR (7)010000
    20-02-10 15:54:19.543 (190) bind 11 : VARCHAR (7)010000
    20-02-10 15:54:19.543 (190) bind 12 : VARCHAR (1)
    20-02-10 15:54:19.543 (190) bind 13 : VARCHAR (10)007000000
    20-02-10 15:54:19.543 (190) bind 14 : VARCHAR (10)007004000
    20-02-10 15:54:19.543 (190) bind 15 : VARCHAR (10)007004005
    20-02-10 15:54:19.543 (190) bind 16 : INT 0
    20-02-10 15:54:19.543 (190) bind 17 : VARCHAR (2)N
    20-02-10 15:54:19.543 (190) bind 18 : VARCHAR (2)4
    20-02-10 15:54:19.543 (190) bind 19 : VARCHAR (7)공원
    20-02-10 15:54:19.543 (190) bind 20 : VARCHAR (8)답변

    20-02-10 15:54:19.543 (190) bind 21 : VARCHAR (1)
    20-02-10 15:54:19.543 (190) bind 22 : VARCHAR (7)155420
    20-02-10 15:54:19.543 (190) bind 23 : VARCHAR (7)155420
    20-02-10 15:54:19.543 (190) bind 24 : VARCHAR (7)155420
    20-02-10 15:54:19.543 (190) bind 25 : VARCHAR (9)agent003
    20-02-10 15:54:19.543 (190) bind 26 : VARCHAR (9)agent003
    20-02-10 15:54:19.543 (190) bind 27 : VARCHAR (23)20200210155420agent003
    20-02-10 15:54:19.543 (190) bind 28 : VARCHAR (2)0
    20-02-10 15:54:19.543 (190) bind 29 : VARCHAR (9)agent003
    20-02-10 15:54:19.543 (190) bind 30 : VARCHAR (9)agent003
    20-02-10 15:54:19.550 (190) execute_all error:-670 tuple 1 time 0.008, EID = 3
    20-02-10 15:54:19.578 (0) end_tran ROLLBACK
    20-02-10 15:54:19.579 (0) end_tran 0 time 0.000
    20-02-10 15:54:19.579 (0) *** elapsed time 0.036

    오류부분 로그입니다.
    해당 테이블에 트리거는 사용하지 않고 있습니다.
  • ?
    오명환 2020.02.17 12:54
    올려주신 로그를 확인해보니, insert 질의 2개를 한번 수행하는 것으로 되어 있는데, 2번째 질의가 무시됩니다.
    응용프로그램에 2개의 질의를 분리해서 각각 수행하도록 수정해주세요.
    CM에서는 응용프로그램이 내부적으로 분리해서 각각 수행하는 것입니다.

    수정 후에도 unique 오류가 발생하면 pk 또는 unique key 정보로 함께 올려주세요.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4441
3986 회원가입이 3명이상 안돼요.. 1 딩이 2010.07.08 7846
3985 회사 서버에 접속을 할려면 설정이 다른가요? 2 후니 2009.07.14 10577
3984 홈경로 databases.txt 질문드립니다 1 큐브리드드 2023.07.17 92
3983 홀따옴표 처리 문의 1 초보 2010.04.15 14679
3982 혼합형 데이터 정렬방법 1 큐키 2021.06.11 85
3981 혼합형 데이터 정렬 방법 1 큐키 2021.06.14 264
3980 혹시 큐브리드매니저 자동완성 끄는 기능 있나요 2 안지민 2012.09.05 6035
3979 혹시 큐브리드 매니져 기본글꼴을 고정폭으로 해주실 생각은 없으신가요... 1 안지민 2012.12.20 5767
3978 혹시 PHP5.3.0 버전에서 모듈 설치되신분 계신가요??? 4 senseplus 2009.07.13 9394
3977 혹시 MMDB 지원하나요? 1 tekkal 2009.01.31 17480
3976 호스트 추가시 발생되는 오류에 대해 문의 합니다. 1 거북이사촌 2015.01.06 5259
3975 호스트 추가 질문입니다. 7 몽유객 2010.12.21 13808
3974 호스트 추가 1 karay2k 2011.12.17 17928
3973 호스트 연결이 안됩니다. 3 file 미드소나 2013.01.01 7752
3972 호스트 연결이 안되요.(비밀번호오류) 2 양희종 2011.09.06 13916
3971 호스트 연결이 무한 로딩도네요 1 file 큐브리드사용자 2022.10.20 118
3970 호스트 연결이 되지 않습니다. 3 file Juooon 2013.07.24 9235
3969 호스트 연결 에러 3 secret PJEPJE 2016.01.28 10
3968 형변환 오류 문의 1 삽질중 2009.12.30 12969
3967 현재 큐브리드 7.1 을 사용하고 있는데요 1 헬리 2009.10.01 8770
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 200 Next
/ 200

Contact Cubrid

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