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 51
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4458
3875 저장 프로시져 질문 3 file 이석희 2009.03.12 16480
3874 초보 질문드립니다^^:(인스턴스 갱신) 1 박동진 2009.03.12 10961
3873 mysql에서 limit와 같은 기능이 있나요? 1 홍서기 2009.03.14 16334
3872 [질문] APC_Install-tools 1.4 사용시 ~ 2 file 야매코더 2009.03.17 10933
3871 에러 코드 관련 다시 질문 드립니다 1 kkckc 2009.03.18 11506
3870 데이타베이스 복구에 관한 질문. 1 김우람 2009.03.18 12051
3869 질의가 무한 루프로 발생시 대처법 질문 1 이석희 2009.03.18 12769
3868 백업파일을 이용하여 데이터베이스가 없는 다른 서버에서 복구하는 방법 질문. 1 김우람 2009.03.19 12976
3867 유니크한 값 얻어오기 있나요? 2 이승훈 2009.03.19 13138
3866 큐브리드 deb 패키징중... 8 강분도 2009.03.19 20578
3865 TIME 포맷 관련 질문 입니다. 1 이승훈 2009.03.19 12107
3864 broker서버가 시작되지 않습니다.. 2 platanus 2009.03.21 23744
3863 CCI 예제 프로그램이 실행이 안되요;; 5 file 나동호 2009.03.21 15036
3862 [쌩초보]내컴퓨터 서버만들기는 성공 했습니다.그후 1 왕초보 2009.03.21 18787
3861 CCI 프로그램을 하려면 어떻게 해야하나요? 2 나동호 2009.03.22 10716
3860 Cubrid 2008 R 1.3 설치중 에러메시지 3 동진 2009.03.23 11008
3859 CUBRID 2008 r1.1 프로그램 삭제 불가 5 file 지누콩 2009.03.23 11825
3858 CCI 프로그램 예제나 자료 나와 있는데 없나요?? 2 나동호 2009.03.24 10703
3857 C++(MFC 아님)에서 프로그래밍 작성을 하려면 어떤것을 사용해야 하나요? 6 나동호 2009.03.24 20053
3856 cci_fetch_size() 가 하는 일이 먼가요..? 1 나동호 2009.03.24 10783
Board Pagination Prev 1 2 3 4 5 6 7 8 9 10 11 ... 200 Next
/ 200

Contact Cubrid

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