Background Image

FORUM

조회 수 20005 추천 수 0 댓글 7
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
connection 후 1천만 건을 insert 하였습니다. 테이블은 만든 상태이고여..
근데 insert 를 하다보면. 몇천건을 쓰다 몇만건을 쓰다
cannot communicate with the broker 라고 발생하면서 broker 하고 연결이 disconnect 됩니다.

문제점이 무엇인지요??

cubrid_broker.conf 에 keep_connection 도 on으로 변경 했는데 마찬가지거든요..

jdbc 를 사용합니다.

  public static void main(String[] args) throws Exception{
       Connection conn = null;
       PreparedStatement pstmt = null;
      
       try{
           Class.forName("cubrid.jdbc.driver.CUBRIDDriver");
           conn = DriverManager.getConnection("jdbc:CUBRID:localhost:33000:test:::", "test", "testdb");

            int count = 0;
            while(count < 10000000){
                String sql = insert into test_tbl ( code, sex, name ) values ( ?, ?, ? )" ;
                pstmt = conn.prepareStatement(sql);
                pstmt.setString(1, ""+System.nanoTime());
                pstmt.setInt(2, 1);
                pstmt.setBytes(3, "11111".getBytes());

                int row = pstmt.executeUpdate();

                if ( row > 0 ){
                    conn.commit();
                    count++;
                }
             }

            stmt.close();
            conn.close();

            } catch ( SQLException e ) {
               System.err.println(e.getMessage());
            } catch ( Exception e ) {
               System.err.println(e.getMessage());
            } finally {
                if ( conn != null ) conn.close();
            }
     }

  • ?
    손승일 2009.09.29 02:00

    CUBRID 상세 버전을 알려 주시기 바랍니다.
    내부에서 현재 버전인 2008 R2.0에서 테스트 한 결과 30만건이 들어 가는 동안에도 에러가 발생하지 않고 있습니다.
    broker 설정은 디폴트로 설정된 상태 그대로 사용하였습니다.
    참고로 아래는 제가 테스트한 소스입니다. 테이블은 create table test_tbl(code varchar(50), sex int, name bit varying(20));으로 생성했습니다. 테스트 하신 내용과 다른 부분이 있으시면 알려 주시기 바랍니다.
    import  java.sql.*;

    public class INSERT {

    public static void main(String[] args) throws Exception{
           Connection conn = null;
           PreparedStatement pstmt = null;

           try{
               Class.forName("cubrid.jdbc.driver.CUBRIDDriver");
               conn = DriverManager.getConnection("jdbc:CUBRID:localhost:36000:demodb:::", "", "");

                int count = 0;
                while(count < 10000000){
                    String sql = "insert into test_tbl ( code, sex, name ) values ( ?, ?, ? )" ;
                    pstmt = conn.prepareStatement(sql);
                    pstmt.setString(1, ""+System.nanoTime());
                    pstmt.setInt(2, 1);
                    pstmt.setBytes(3, "11111".getBytes());

                    int row = pstmt.executeUpdate();

                    if ( row > 0 ){
                        conn.commit();
                        count++;
                    }
                 }

                pstmt.close();
                conn.close();

                } catch ( SQLException e ) {
                   System.err.println(e.getMessage());
                } catch ( Exception e ) {
                   System.err.println(e.getMessage());
                } finally {
                    if ( conn != null ) conn.close();
                }
         }
    }


  • ?
    차가워여 2009.09.29 03:09
    code varchar(30), sex int, name bit varying(20) 으로 하였습니다.
    버젼은 2008 R2.0 을 사용하였습니다. 자바 complier 버젼은 6.0을 사용 하였고요. 처음에 name 값을 char에서 bit varying 으로 바꾸어도 똑같네여...어쩔때는 20만 건 정도 쓰다가 Exception 이 날때도 있고 1만 건 쓰다가 오류 날때도 있네여... cubrid_broker.conf 파일은 디폴트 상태입니다.
  • ?
    손승일 2009.09.30 03:48
    내부 테스트 결과 300만건 이상 처리되는 동안에도 에러가 발생하지 않고 있습니다.
    에러 내용을 좀더 상세히 알아보기 위해 System.err.println(e.getMessage());을 e.printStackTrace();로 변경해서 결과를 알려주시기 바랍니다.
    테스트 환경이 동일한 장비에서 DB서버와 java 프로그램이 함께 작동하는 지 아니면 별개의 서버에서 리모트로 접속하는지도 알려 주세요.

  • ?
    차가워여 2009.10.01 21:05
    cubrid.jdbc.driver.CUBRIDException: Cannot communicate with the broker
     at cubrid.jdbc.driver.CUBRIDConnection.prepare(CUBRIDConnection.java:674)
     at cubrid.jdbc.driver.CUBRIDConnection.prepare(CUBRIDConnection.java:834)
     at cubrid.jdbc.driver.CUBRIDConnection.prepareStatement(CUBRIDConnection.java:135)

    이렇게 오류가 뜹니다.
  • ?
    2009.10.06 01:13
    위 덧글에 몇가지 추가 확인 요청드렸는데 답변을 안주셨네요. 확인 부탁드립니다.
    더불어 재현을 위해 조금이라도 특이한 사항이 있으시면 알려 주시기 바랍니다. 
    DB가 운영되는 시스템의 메모리 사양, 함께 기동되고 있는 프로그램 등.
    또한 가능하면 시스템 재부팅 후 DB서버만 기동된 상태에서의 확인도 부탁드립니다.
  • ?
    차가워여 2009.10.06 23:35
    cubrid.jdbc.driver.CUBRIDException: Cannot communicate with the broker
     at cubrid.jdbc.driver.CUBRIDConnection.prepare(CUBRIDConnection.java:674)
     at cubrid.jdbc.driver.CUBRIDConnection.prepare(CUBRIDConnection.java:834)
     at cubrid.jdbc.driver.CUBRIDConnection.prepareStatement(CUBRIDConnection.java:135)

    printStackTrace() 결과는 위에 상기 하였고여. 따로 리모트연결은 하지 않고 CUBRID Manager Client와 이클립스에서 소스 설명 했던 부분만 올린 상태에서 실행 했을 때의 결과 입니다. 시스템 재부팅후에 결과도 마찬가지 입니다. CONFIG쪽은 처음 CUBRID설치때와 똑같고요..
  • ?
    손승일 2009.10.08 03:16
    저희쪽에서는 여전히 재현이 안 되고 있습니다.
    혹시 다른 장비가 있으시면 동일한 테스트를 다른 장비에서 수행 보시고 결과를 알려주시기 바랍니다.

List of Articles
번호 제목 글쓴이 날짜 조회 수
공지 SQLGate for CUBRID 영구 무료 라이선스 제공 file admin 2020.04.09 4441
966 Java VM is not running....문제입니다 1 수수 2011.04.29 16348
965 질문드려요 2 깔라 2011.04.29 8602
964 큐브리드 데이터베이스 로그에 내용과 같은 오류메시지가 가끔씩 기록됩니다. 2 종이 2011.04.28 8903
963 매니저에서 공간정리 실행 오류 1 file 한종희 2011.04.27 14333
962 매니저 클라이언트 오류 2 조은이야기 2011.04.27 11755
961 BeginTrans 상태에서 검색 시 응답없음 발생 7 까망이 2011.04.22 14738
960 데이터 복구시 질문사항입니다. 1 ........ 2011.04.21 13059
959 DB Error, Unload / Load 실패남 1 file 한종희 2011.04.16 13433
958 큐브리드 페이징 관련 문의 1 마산이프로 2011.04.15 14291
957 큐브리드 사용시 궁금한점이 있습니다. 11 종이 2011.04.14 11582
956 Microsoft Visual C++ 2008 재배포 가능 패키지 설치 안하고 Trayicon 보이게 하는 방법 1 혀니짱 2011.04.11 15795
955 windows xp 에서 큐브리드 설치시 오류 3 혀니짱 2011.04.09 12188
954 데이터가 존재하는 테이블 내 필드의 데이터 타입 변경이 가능한가요? 2 차오이 2011.04.09 14720
953 DBCP 관련 문제 때문에 질문 드립니다. 1 피아오 2011.04.04 10048
952 PHP에서 CUBRID 모듈이 로드 되지 않습니다. 3 유리심장 2011.04.03 15464
951 SELECT 시, 필드 값의 대소문자 구분 없이 조건 검색 가능할까요? 2 차오이 2011.04.02 16380
950 VC 2005 에 가장 적합한 api 가 어떤것인가요? 1 엥꼬 2011.04.02 10135
949 DBCP+OID관련 답변감사합니다. 2 안지민 2011.03.31 10022
948 Nginx-PHP-Cubrid 연동시 Cubrid 확장 모듈 로딩 불가 문의 입니다. 2 reerror 2011.03.30 12745
947 OODB특성을 사용하기 위해 DBCP를 포기하는게 적당할까요? 2 안지민 2011.03.30 9614
Board Pagination Prev 1 ... 147 148 149 150 151 152 153 154 155 156 ... 200 Next
/ 200

Contact Cubrid

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