Background Image

FORUM

조회 수 418 추천 수 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 4263
896 CentOS 7 환경에서의 CUBRID 8.4.1.32003 버전의 php 5.4.16 드라이버 빌드 1 김람지 2019.04.03 229
895 cubrid 중지 현상 문의 5 file passik89 2021.02.18 229
894 브로커기능이 궁금합니다.? 1 coolkkm 2018.03.27 228
893 큐브리드 DAMO(암호화)관련 버전 호환관련하여 문의드립니다. 3 초코초코초 2023.03.20 228
892 11.2 jdbc driver 1 경산손사장 2022.06.09 227
891 파일 업로드 시 생기는 DB 다운 7 오렌지 2021.06.14 227
890 많은 데이터를 select를 했는데 cubrid가 꺼져버립니다. 5 테스형2 2021.09.14 226
889 CSQL 로그와 매니저 로그를 ON/OFF할 수 있나요? 1 dosem7 2018.01.11 226
888 리눅스에 큐브리드 설치 관련 질문 입니다. 1 file 하인츠링게 2021.04.09 226
887 큐브리드 검색 초건 총 개수 구하는 함수나 방법알고 싶어요. 1 우유악마 2022.11.22 226
886 프로시저 질문드립니다. 2 file hiy5978 2020.05.25 224
885 큐브리드 매니저 엑셀저장 기능을 질의결과를 보지 않고 저장하는 방법은 없나요? 1 봉보로봉봉 2020.08.05 224
884 설치시 오류관련 질문입니다 2 유글 2021.10.05 223
883 외래키 제약사항 생성 시. 1 열쓰 2021.11.30 222
882 cubrid manager 에서 select 조회 시 검색 단위에 대해서 질문있습니다. 1 브로콜리너마저 2020.02.14 222
881 Python 3.9 버전 사용시 Cubrid 접속 불가에 대한 개선 요청 1 오션나인 2021.02.19 222
880 utf8mb4 지원되나요??? 1 덴드로비움 2021.05.06 221
879 [-830]Cannot allocate query entry any more. Maximun allocatable entries are 100 1 dasomoh 2021.01.07 221
878 데이터 인서트 할떄 질문 1 geopeople 2018.02.05 221
877 비용문의합니다! 1 김진리 2017.09.01 219
Board Pagination Prev 1 ... 150 151 152 153 154 155 156 157 158 159 ... 199 Next
/ 199

Contact Cubrid

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