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 21
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4452
3811 테이블스페이스 1 ozro 2022.06.22 291
3810 테이블생성 494 실행오류 문의 1 뺀돌스 2019.03.25 1273
3809 테이블별 row 개수를 조회하는 쿼리 6 cncn 2023.10.18 111
3808 테이블목록과 필드목록을 조회하는 방법 1 박경채 2016.11.21 22063
3807 테이블명을 한글로 할 수는 없나요? 3 유니콘 2010.02.22 13831
3806 테이블명 대문자 문의드립니다. 1 jechoi 2019.07.09 620
3805 테이블당 컬럼 수 조회하는 SQL문 ? 1 ohgeumjin 2020.05.27 1222
3804 테이블단위로 이관 3 secret 이호영 2016.01.29 14
3803 테이블간 relationship 구현 어떻게하나요? 1 thiago 2012.10.11 5778
3802 테이블/컬럼명 자동완성 설정문의 5 file dfdfdd 2023.02.10 201
3801 테이블 한글명, 컬럼 한글명을 입력해주는 신텍스는 없나요?? 2 덴드로비움 2017.08.16 1064
3800 테이블 필드명이 value 일경우 어떻게 처리해야하나요 1 건빵 2010.10.08 7295
3799 테이블 필드 추가 후 위치변경 하기 2 건빵 2010.11.29 10220
3798 테이블 파티션나눈후 조회시 에러가 발생합니다. 2 연습용 2021.11.25 186
3797 테이블 파티션 추가 문의 1 초보 2010.04.09 10470
3796 테이블 파티션 문의 4 초보 2010.04.09 10186
3795 테이블 파티션 관련 문의 1 전산 2013.04.30 7594
3794 테이블 파티션 -> 일반 테이블 변경 문의 4 초보 2010.04.09 10623
3793 테이블 파티셔닝은 1 홍서기 2009.03.07 15037
3792 테이블 특정문자 검색 SQL문 1 ohgeumjin 2020.06.03 245
Board Pagination Prev 1 ... 5 6 7 8 9 10 11 12 13 14 ... 200 Next
/ 200

Contact Cubrid

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