Background Image

FORUM

조회 수 210 추천 수 0 댓글 4
?

단축키

Prev이전 문서

Next다음 문서

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


* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.

OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
9.2.12
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
java, php, odbc 등 입력


* CUBRID 응용 오류, SQL 오류 또는 SQL 튜닝 관련된 문의는 반드시 다음의 내용을 추가해 주세요. 비밀글이나 비밀 댓글도 가능합니다.
* 저희가 상황을 이해하고, 재현이 가능해야 알 수 있는 문제들이 많습니다. 가능한 정보/정황들을 부탁합니다.

 

에러 내용 및 재현 방법 재현 가능한 Source와 SQL
관련 테이블(인덱스, 키정보 포함) 정보 CUBRID 홈 디렉토리 아래 log 디렉토리 압축


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

 

 

Mybatis와 cubrid를 사용하고 있는데 auto increament에 관련하여 동시성 문제 질문이 있습니다.


BulkInsert 쿼리를 사용할 때 secret key로 키를 갖고오는 것이 아닌, BulkInsert이후에 select last_insert_id()를 조회하여

처음 insert된 id를 갖고오고 BulkInsert를 한 결과에 각각 ++ 연산을하면서 id 값을 넣고자 하는데요
 

  • myisam table engine
  • or innodb pre mysql v5.1
  • or innodb with mysql v5.1 or newer and the innodb_autoinc_lock_mode is 0 or 1
     

위에 환경에서는 동시성 문제가 없다고하는데, cubrid에서도 동시성 문제가 없을 까요 ?

 

  • ?
    권호일 2021.07.21 20:26
    동시성에 문제는 어떤것을 얘기하는 건가요?


    아래의 예제와 같이 처리 된다면, 동시성에 문제가 없을 것 같은데요.

    1. 테이블 생성
    CREATE TABLE auto_inc_tbl( id INTEGER AUTO_INCREMENT, col1 VARCHAR(100) ) ;
    INSERT INTO auto_inc_tbl (col1) VALUES('1') ;
    select last_insert_id() ;
    commit;
    결과값 ==> 1


    아래 2,3을 동시에 실행 할 경우 결과값은 각각 처리 됨


    2. A사용자가 DB에 접속하여 아래의 쿼리 수행
    INSERT INTO auto_inc_tbl (col1) VALUES('2') ;
    select last_insert_id() ;
    결과 ==>2

    3. B 사용자가 DB에 접속하여 아래의 쿼리 수행
    INSERT INTO auto_inc_tbl (col1) VALUES('3') ;
    select last_insert_id() ;
    결과 ==>3
  • ?
    dodev 2021.07.21 23:00

    작성해주신 예제 기준으로 제가 생각하는 문제를 얘기해드리자면,

    1. A 사용자가 아래 쿼리를 수행
    INSERT INTO auto_inc_tbl (col1) VALUES('3'), ('4'), ('5') ;
    select last_insert_id() ;

    2. B사용자가 아래 쿼리를 수행
    INSERT INTO auto_inc_tbl (col1) VALUES('0'), ('1'), ('2') ;
    select last_insert_id() ;

    A와 B 사용자가 동시에 위 작업을 수행하게 되어 다음과 같이 순서가 진행됨.

    '3' 이 정상적으로 저장됨 <- A유저의 insert
    '0' 이 정상적으로 저장됨 <- B유저의 insert
    '1' 이 정상적으로 저장됨 <- B유저의 insert
    '4' 가 정상적으로 저장됨 <- A유저의 insert
    '5' 가 정상적으로 저장됨 <- A유저의 insert
    '2' 가 정상적으로 저장됨 <- B유저의 insert

    이렇게 진행이 됐을 때 먼저 insert를 시작하여 생성된 A사용자의 row 키값이 1, 2, 3으로 보장되는 지 궁금합니다.
     

  • ?
    권호일 2021.07.22 10:38
    네.
    A사용자의 id( auto increment값)는 순차적인 값인 1, 2, 3 으로 입력됩니다.
  • ?
    dodev 2021.07.22 17:09
    답변 감사합니다.

  1. CUBRID 사용자를 위한 DBeaver 도구 출시 안내

    Date2024.04.23 Byadmin Views65
    read more
  2. SQLGate for CUBRID 영구 무료 라이선스 제공

    Date2020.04.09 Byadmin Views4465
    read more
  3. cubrid auto increament 동시성

    Date2021.07.21 Bydodev Views210
    Read More
  4. cubrid archive log가 삭제되지 않아서, 강제로 삭제할 수 있는 방안을 모색중입니다.

    Date2021.07.28 Bybikehee Views197
    Read More
  5. update 문 권한 관련 문의

    Date2021.07.29 Byots21 Views92
    Read More
  6. 큐브리드 jdbc URL 해석

    Date2021.08.03 By겸둥이k Views935
    Read More
  7. 큐브리드에서 덤프하는 방법 질문하겠습니다.

    Date2021.08.04 By겸둥이k Views1244
    Read More
  8. 안녕하세요. 큐브리드 DBA권한계정을 잊어버렸을때 찾는방법이 있을까요?

    Date2021.08.10 By겸둥이k Views330
    Read More
  9. oledb 오토커밋 off 방법

    Date2021.08.12 Byots21 Views253
    Read More
  10. 저장 함수 호출 오류

    Date2021.08.12 Bykeem Views503
    Read More
  11. Edit Host 에러 (bad record MAC)

    Date2021.08.16 By알고싶어요 Views546
    Read More
  12. cubrid.jdbc.jci.UConnection.createJciException 에러가 납니다...

    Date2021.08.17 By순대 Views449
    Read More
  13. AUTO_INCREMENT 수동 증가 문의

    Date2021.08.19 Bycubrid초보 Views727
    Read More
  14. 큐브리드 같은 쿼리 연속 조회속도 문제 (캐시)

    Date2021.08.19 By겸둥이k Views149
    Read More
  15. cubrid 함수 한글 깨짐 현상

    Date2021.08.19 Bycubrid초보 Views584
    Read More
  16. cmd명령어 cubrid broker status 치면 창이 잠깐 떳다가 꺼집니다.

    Date2021.08.24 By겸둥이k Views154
    Read More
  17. 큐브리드 커넥션시 혼자할때는 접속잘되었지만 여러명이 붙는순간 에러

    Date2021.08.24 By겸둥이k Views211
    Read More
  18. cubrid 서버가 실행 될때 javasp(자바 저장 프로시저 서버)가 같이 실행 할 수 있는 방법

    Date2021.08.24 Byjungsin Views281
    Read More
  19. ADO.NET Connector 문의

    Date2021.08.31 By까망이 Views68
    Read More
  20. mssql 마이그레이션 문의

    Date2021.08.31 By둠둠둠 Views117
    Read More
  21. 큐브리드 빅데이터를 효과적으로 import 시키는방법

    Date2021.08.31 By개1발자 Views212
    Read More
  22. 큐브리드에 제공하는 파티셔닝 사용후 조회시 문제

    Date2021.09.01 By연습용 Views169
    Read More
Board Pagination Prev 1 ... 169 170 171 172 173 174 175 176 177 178 ... 200 Next
/ 200

Contact Cubrid

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