Background Image

FORUM

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

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
Window7 32bit, Linux 64bit 등
CUBRID Ver.
8.4.4.7004
CUBRID TOOL Ver.
[도움말]-[버전정보] 확인
응용 환경(API)
10.2.1.8849 

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


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


##이전상황

일전에 cubrid8.4.4 JDBC Driver에서 isValid함수가 미구현되어 있다고 문의를 드렸고,

 isValid 함수는 6월 patch version(10.1.4, 10.2.1)에서 작업 중이라는 답변을 받았습니다.

https://www.cubrid.com/index.php?_filter=search&mid=qna&search_target=user_id&search_keyword=cnska5010&document_srl=3826493


신규 릴리즈된 JDBC 10.2.1 Driver에서 valid함수가 포함된 것을 확인 후, 사용하려고 했습니다.

 - DB엔진은 8.4.4버전

 - JDBC는 10.2.1


##문제상황

CUBRID 10점대 엔진에서는 isolation level이 default 4이고, 4,5,6만 설정이 가능한 것으로 보이고

https://www.cubrid.org/manual/en/10.0/sql/transaction.html

이에 맞춰서 10점대 JDBC도, isolation level을 4이상으로만 설정가능한 것으로 보입니다.


CUBRID 9점대 이하 버전에서는 isolation level default가 3이고, 저는 isolation level을 3으로 설정해서 사용중입니다.

이전에 문의드린 이슈를 해결하기 위해서는 JDBC 10.2.1을 사용해야하는데,  JDBC 10.2.1을 사용시엔 isolation level을 4로 설정해야 하는것으로 보입니다.

헌데 제 환경에서는 isolation level을 높히면, CUBRID사용에 어려움이 있을것 같습니다. ( 다량의 lockwait으로 동시성이 떨어질 것으로 보임 )


##문의사항

JDBC 10점대 사용시에 isolation level을 3으로 사용할 수 있는 방안이 있을까요?


그렇지 않다면,, cubrid 9점대 JDBC나 8점대에 isVaild관련 함수를 구현해 주실 수 있으실까요?

아직 8.4.4가 EOL되지 않은 상태라서, JDBC쪽 기능패치가 가능할것이라 기대됩니다..

https://www.cubrid.com/notice/3826053




  • ?
    오명환 2020.07.23 12:36
    JDBC release시 8.4.4 서버와 호환성 검증 통과하였고,
    isolation level 설정은 서버 설정이기때문에 서버의 설정값을 3으로 설정하시고 사용하셔도 문제가 없을 것 같습니다.
  • ?
    kjkmadness2 2020.07.23 14:57
    CUBRID 8.4.4 서버
    CUBRID 10.2.1 JDBC Driver
    HikariCP

    이 조합을 사용할 경우, connection 을 pool 로 반납할때 오류가 발생합니다.
    HikariCP 는 connection 생성시 해당 connection 의 isolation level 을 조회해서 기본값으로 저장해두고..
    connection 반납이 발생할때 connection 에 기본값을 다시 되돌려주는 형태로 동작합니다.

    CUBRID 8.4.4 서버에선 connection 생성시 기본적으로 isolation level 을 3으로 설정해 주는데..
    JDBC Driver 10.2.1 의 CUBRIDConnection 은 3 이란 값을 정규 범위로 보지 않기 떄문에 0 으로 변환해서 반환해주게 됩니다.
    그리고 HikariCP 가 이 0 을 다시 CUBRIDConnection#setTransactinoIsolation 의 인자로 넘기면서, 유효성 체크에 실패해 오류가 발생하게 되고요.

    10.2.1 에 포함된 관련 패치를 9.3.9 쪽으로 backporting 하는 PR 을 생성해두었으니, 검토 부탁 드리겠습니다.

    https://github.com/CUBRID/cubrid-9.3.9/pull/10
  • ?
    오명환 2020.07.28 08:44
    우선, 9.3.9 repository에 PR해주신 것 감사드립니다.
    하지만, 하위의 특정 version에 기능을 넣게 되면, 사용하시는 분들이 혼란을 발생할 수 있습니다.

    알려주신 문제에 대해 내부에서 재현 후 수정하도록 하겠습니다.
    수정후 답글 담기도록 하겠습니다.
  • ?
    kjkmadness2 2020.07.28 12:12
    어떤 혼란을 우려하시는지는 잘 모르겠습니다만..
    간단한 변경으로 저버전 큐브리드 + spring boot(mybatis + hikaricp) 조합을 사용할 수 있길 바라는 마음이었는데, 아쉽네요~
  • ?
    오명환 2020.09.03 11:25
    CUBRID 9.3 이하의 isolation level 오류 되는 문제를 수정한 JDBC driver 10.2.2를 release 했습니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 CUBRID 사용자를 위한 DBeaver 도구 출시 안내 admin 2024.04.23 125
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4476
3943 하이버네이트 페이징 처리 7 질주하는구 2015.02.11 8268
3942 하이버네이트 uniqueResult 함수 사용 문의 1 kim77p 2018.05.15 464
3941 하나의 쿼리에서 복수 테이블 업데이트 방법 문의 4 도담도담 2023.05.17 139
3940 하나의 노드에 여러개의 db가 있을때, ha 구성을 안한 db는 사용하지 못하는 문제. 1 깜장매2 2014.12.09 5713
3939 필드명 대문자로 바꾸는법좀 알려주세요 1 초보개발자임 2015.01.16 6256
3938 필드 크기 변경 계획에 대한 질문 3 유니콘 2012.04.04 7447
3937 필드 크기 변경 계획에 대한 질문 1 유니콘 2010.07.23 9903
3936 필드 추가시 빨랐던 select문 느려지는 이유 3 나라디 2023.02.10 128
3935 프로시져 호출에러 2 secret blast 2013.11.01 8
3934 프로시져 에러 처리 관련해서... 2 펌피 2017.09.04 1209
3933 프로시저와 함수 관련 질문이 있습니다... 1 bjosbkjx 2019.07.11 239
3932 프로시저 클래스 등록 관련입니다. 1 mon 2020.04.16 175
3931 프로시저 질문드립니다. 2 file hiy5978 2020.05.25 238
3930 프로시저 오류가 무엇때문에 나는지 모르겠습니다. 4 file 펌피 2017.10.20 1664
3929 프로시저 사용시 1 경아 2009.08.03 10095
3928 프로시저 변환 문의 2 천상 2016.06.15 9786
3927 프로시저 unload 문의 1 chocob 2014.06.19 6233
3926 프로시저 resultset 문의 secret 신데렐라 2013.05.23 10
3925 프로시저 질문입니다. 1 닐릴리 2019.02.15 328
3924 프로세스 정상동작 문의 드립니다. 2 file 윤희서 2009.01.23 33636
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 ... 201 Next
/ 201

Contact Cubrid

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