database.sarang.net
UserID
Passwd
Database
DBMS
MySQL
ㆍPostgreSQL
Firebird
Oracle
Informix
Sybase
MS-SQL
DB2
Cache
CUBRID
LDAP
ALTIBASE
Tibero
DB 문서들
스터디
Community
공지사항
자유게시판
구인|구직
DSN 갤러리
도움주신분들
Admin
운영게시판
최근게시물
PostgreSQL Q&A 1730 게시물 읽기
No. 1730
Re: large object에서 pg_locreate()함수 에러
작성자
정재익
작성일
2000-10-08 16:38
조회수
6,922

이상하군요. 일단 현재의 large object 를 쓰는데에는 크게 문제가 없어 보입니다.

 

table 구조를

CREATE TABLE obj_table ( rowid int,loid oid, loname text);

이렇게 정의해 두었다면 다음과 같이 insert 가 되겠지요.

 

insert into obj_table values ($rowid, $obj,'$msg_name');

 

이런식으로 들어가게 되겠지요.

아래의 자료가 제대로 들어갔는지 테스트를 해 보시려면 postgres 라는 DBA 로 접속하신 다음 select lo_export(oid,'/tmp/'||loname) from obj_table where rowid=1; 이런식으로 해서 확인을 해 보시기 바랍니다. 그러면 어느 정도 어디서 에러가 났는지 확인을 할 수 있을 것입니다. 아래의 함수 자체는 전혀 문제가 없어 보입니다.

그리고 large object 입력시 에러가 발생하면 postmaster backend 데몬 자체가 죽는 경우가 가끔 발생하는 데 이것을 막을 방도가 없습니다. (일종의 버그라고 생각합니다) 일단 PostgreSQL 의 버전을 7.0.2로 upgrade 시키시기 바랍니다. 상당 부분 버그가 수정되었습니다.

 

::오행언 님께서 쓰시길::

 

> function putDataToLobj($db, $msg){

>

> $conn = pg_Connect("dbname=$db user=$id password=$pw");

>

> pg_Exec($conn,"begin");

>

> $obj = pg_locreate($conn);

> $fp = pg_loopen($conn,$obj,"w");

> pg_lowrite($fp,$msg);

> pg_loclose($fp);

>

> pg_Exec($conn,"commit");

> pg_Exec($conn,"end");

>

> pg_Close($conn);

>

> return $obj;

> }

>

> 저는 PHP와 Postgresql(6.4)를 가지고 게시판을 만들고 있습니다.

> 그런데 필드 하나의 데이타가 8k가 넘어서기 때문에 Large Object

> 를 사용해야 합니다.

> 그런데 위의 함수 pg_loclose($fp) 에서 다음과 같은 에러가 발생합니다.

> 이유를 알려 주시면 감사하겠습니다.

>

> Warning: Unable to close PostgresSQL large object descriptor 0 in /export/home/ubf/htdocs/pgdb/l

> object.inc on line 14

>

> 실제로 Database의 /data/base/$db디렉토리에 보니 Large object를 위한

> 2개의 index 파일은 생성되어 있습니다. 그런데 파일 내용은 저장되지 않았더군요

>

> 그리고 Large object 처리시 에러가 발생하면 backend에서 에러가 발생하던데

> 어떻게 처리해야 하는지도 가르쳐 주시면 감사하겠습니다.

[Top]
No.
제목
작성자
작성일
조회
17351730번 답변에 대한 감사
오행언
2000-10-09
6169
1734한 서버에서 다른 서버로 백업파일을 복구하는 도중에 에러가 납니다.
2000-10-09
7591
1736┕>Re: 한 서버에서 다른 서버로 백업파일을 복구하는 도중에 에러가 납니다.
정재익
2000-10-09 15:13:46
7565
1738 ┕>Re: Re: 한 서버에서 다른 서버로 백업파일을 복구하는 도중에 에러가 납니다.
2000-10-09 17:47:36
6971
1740  ┕>Re: Re: Re: 한 서버에서 다른 서버로 백업파일을 복구하는 도중에 에러가 납니다.
정재익
2000-10-10 08:55:02
6991
1742   ┕>한 서버에서 다른 서버로 백업파일을 복구하는
2000-10-10 10:02:16
7792
1744    ┕>Re: 한 서버에서 다른 서버로 백업파일을 복구하는
정재익
2000-10-10 11:26:12
7188
1745     ┕>한 서버에서 다른 서버로 백업파일을 복구하는
2000-10-10 19:37:41
6980
1731혹시 PostgerSQL에 대한 강의같은것은 없나요?
무명
2000-10-09
7048
1732┕>Re: 혹시 PostgerSQL에 대한 강의같은것은 없나요?
정재익
2000-10-09 10:42:38
7086
1733 ┕>Re: Re: 혹시 PostgerSQL에 대한 강의같은것은 없나요?
무명
2000-10-09 10:51:01
7116
1739┕>Re: 혹시 PostgerSQL에 대한 강의같은것은 없나요?
김윤한
2000-10-10 00:08:47
6877
1728large object에서 pg_locreate()함수 에러
오행언
2000-10-08
6862
1730┕>Re: large object에서 pg_locreate()함수 에러
정재익
2000-10-08 16:38:03
6922
1723재익님 급한 질문입니당..
송봉준
2000-10-07
7052
1724┕>Re: 재익님 급한 질문입니당..
정재익
2000-10-07 10:03:14
7481
1725 ┕>Re: Re: IMMEDIATE 에서 에러가 나는데 .. 어떤에러 입니까?
송봉준
2000-10-07 16:39:07
7641
1726  ┕>Re: Re: Re: IMMEDIATE 에서 에러가 나는데 .. 어떤에러 입니까?
정재익
2000-10-07 23:48:54
7359
1720pg_dump
sohne
2000-10-06
6154
1721┕>Re: pg_dump
정재익
2000-10-06 19:40:25
6562
1717delete 에러에 관한 질문
박상철
2000-10-05
5688
1719┕>Re: delete 에러에 관한 질문
정재익
2000-10-05 20:51:11
6186
Valid XHTML 1.0!
All about the DATABASE... Copyleft 1999-2024 DSN, All rights reserved.
작업시간: 0.021초, 이곳 서비스는
	PostgreSQL v16.2로 자료를 관리합니다