Background Image

FORUM

조회 수 16401 추천 수 0 댓글 2
?

단축키

Prev이전 문서

Next다음 문서

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

* 질문 등록 시 다음의 내용을 꼭 기입하여 주세요.
OS
개발PC Win7 64bit, 서버 CentOS
CUBRID Ver.
CUBRID 2008 R4.3 (8.4.3.1005)
CUBRID TOOL Ver.
CUBRID 매니저 2013 빌드 0039  (64bit)
응용 환경(API)
Java, Eclipse

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


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

Clob 컬럼에 100메가 넘는 파일을 Insert 할 시 Java heap Space 오류가 발생합니다.

조언해주신다면 어떤것이든 감사하게 받겠습니다.

1. http://www.cubrid.com/zbxe/343796 를 참고하여 코딩하였구요.

2. 이클립스의 프로젝트 설정에서 Java VM arguments 를 1024m으로 늘려줬습니다.

   -Xms256m -Xmx1024m 으로 설정

 

3. 아래는 해당 코드 입니다.

StringBuilder str = new StringBuilder();//여기에 text 내용 삽입

 

Clob clob = conn.createClob();
clob.setString(1, str.toString()); //여기서 오류발생
reader.close();
sql.setLength(0);
sql.append("n INSERT INTO TBL_AGENT_FILECONTENT ");
sql.append("n (MD5, CONTENT, CONTENTTYPE) ");
sql.append("n values ");
sql.append("n ((?), (?), (?))");
pstmt = conn.prepareStatement(sql.toString());
pstmt.setString(1, sMD5);
pstmt.setClob(2, clob);
pstmt.setString(3, sType); 

 

4. str.toString에 text파일에서 읽어온 작은 텍스트인 경우 정상 Insert 되나

100메가 짜리 text인 경우 주석처리한 부분에서 에러가 발생합니다.

 

 

5. 에러 로그는 다음과 같습니다.

2013. 5. 10 오전 10:04:28 com.sun.xml.internal.ws.server.sei.EndpointMethodHandler invoke
심각: Java heap space
java.lang.OutOfMemoryError: Java heap space

 at java.util.Arrays.copyOfRange(Unknown Source)
 at java.lang.String.<init>(Unknown Source)
 at java.lang.StringBuilder.toString(Unknown Source)

... 이하 생략


6. 테이블 스키마 입니다.

CREATE TABLE "tbl_agent_filecontent" 

(

   "md5" CHARACTER VARYING(100) NOT NULL, 

   "contenttype" INTEGER, 

   "content" CLOB, 

   CONSTRAINT pk_tbl_agent_filecontent PRIMARY KEY("md5") 

);


 

7. 마지막으로 전체코드 첨부드려봅니다.

File f = new File(fileName);
if (f.isFile()) {
 StringBuilder str = new StringBuilder();
 FileReader fileReader = new FileReader(fileName); //파일경로
 BufferedReader reader = new BufferedReader(fileReader);
 
 //파일로딩
 char[] c = new char[(int)f.length()];
 reader.read(c);
 str.append(c);
 
 //Insert
 Clob clob = conn.createClob();
 clob.setString(1, str.toString()); //여기서 에러발생
 reader.close();
 sql.setLength(0);
 sql.append("n INSERT INTO TBL_AGENT_FILECONTENT ");
 sql.append("n (MD5, CONTENT, CONTENTTYPE) ");
 sql.append("n values ");
 sql.append("n ((?), (?), (?))");
 pstmt = conn.prepareStatement(sql.toString());
 pstmt.setString(1, sMD5);
 pstmt.setClob(2, clob);
 pstmt.setString(3, sType);      
 ResultType = pstmt.executeUpdate();

 

  • ?
    이용미 2013.05.15 21:39

    안녕하세요. 답변이 늦어 죄송합니다.

    혹시 JAVA VM argument 설정 이외에 메뉴-[Run]-[Run Configurations]-[Arguments ]에도 동일하게 설정이 되어있는지 확인 부탁 드립니다.

  • ?
    김상윤 2013.05.16 20:59

    네 아래와 같이 설정되어 있습니다.


    -Xms256m -Xmx1024m 


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

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

    Date2020.04.09 Byadmin Views4458
    read more
  3. UTF-8 한글이 깨집니다.

    Date2011.04.30 By코난7 Views16473
    Read More
  4. 큐브리드 쿼리 처리 속도에 대한..

    Date2011.01.10 By스마트 Views16428
    Read More
  5. Clob Insert 시 Java heap space 에러 문의드립니다.

    Date2013.05.10 By김상윤 Views16401
    Read More
  6. 페도라 10에서 큐브리드 rpm 설치시 오류

    Date2009.03.26 By스나이퍼 Views16391
    Read More
  7. SELECT 시, 필드 값의 대소문자 구분 없이 조건 검색 가능할까요?

    Date2011.04.02 By차오이 Views16381
    Read More
  8. 저장 프로시저 작성법

    Date2010.03.14 Bywebdoors Views16379
    Read More
  9. java PreparedStatement 변수 바인딩 시 에러

    Date2012.08.04 By빛돌 Views16355
    Read More
  10. Java VM is not running....문제입니다

    Date2011.04.29 By수수 Views16349
    Read More
  11. jsp 연결~~

    Date2009.11.10 By하이에나 Views16335
    Read More
  12. OLEDB insert관련 질문입니다.

    Date2009.02.05 Bygarfield39 Views16334
    Read More
  13. mysql에서 limit와 같은 기능이 있나요?

    Date2009.03.14 By홍서기 Views16334
    Read More
  14. 이클립스 DBViewer에서 1분정도 지나면 컨넥션이 끊어집니다.

    Date2009.06.04 By천타에 허리한번 펴자 ㅡㅡ; Views16332
    Read More
  15. double 표시형식 문의

    Date2011.12.18 By지렸당께 Views16277
    Read More
  16. [문의]임베디드 SQL 개발시 참고해야 할 기술문서가 어디있는지요?

    Date2009.01.22 Byvictory Views16269
    Read More
  17. cubrid broker fail문제

    Date2016.12.13 By왠키 Views16263
    Read More
  18. Cannot communicate with the broker 오류

    Date2013.04.16 By미스터투 Views16253
    Read More
  19. Cubrid iBatis Cursor 예제좀 부탁드립니다.

    Date2012.03.21 By깨달음 Views16250
    Read More
  20. 오라클에서 큐브리드 데이터 이관

    Date2016.12.07 By으라챠챠 Views16239
    Read More
  21. cubridmigration toolkit 이용시

    Date2013.11.07 By쩡저리 Views16236
    Read More
  22. mysql 데이트 컬럼 자르기 문의

    Date2010.03.31 By초보 Views16213
    Read More
Board Pagination Prev 1 ... 10 11 12 13 14 15 16 17 18 19 ... 200 Next
/ 200

Contact Cubrid

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