안녕하세요.
이 홈페이지에서 많은 걸 얻어가고 있습니다.
저도 postgresql 을 사용하는 입장에서 송재호님의 심정을 십분 이해하여
이 홈페이지 관리를 하시는 재익형과 한번 시도해 보았습니다.
저는 머리가 따라주지 않으니 몸으로라도 때워야 하겠기에... /./
이 덤프화일을 그냥 restore 하면
에러가 나면서 역시 restore 가 되지 않더군요.
PQsendQuery() // query is too long. Maximum length is 8191
query buffer max length of 20000 exceeded
query line ignored
Segmentation fault
궁리끝에 vi 상에서 정규식을 써가면서 해 보았지만...
역시 동일한 에러더군요.
하는 수 없이 split 를 이용해서 쪼갠후 하나씩 restore 하니...잘 되더군요.
xaa 경우 세개로 쪼개진 건 split /l 10000 단위로 하다보니..용량한쪽으로 치우쳐졌습니다.
메모리 버퍼 버그인지 몰라도 1.5메가를 넘어서면 에러가 납니다.
이상이 어제까지 실행한 결과이고요 오늘 해결의 실마리를 풀었습니다.
//////////////////////////////////////////////////////////////////////////////////
오늘 회사에까지 와서 해보았습니다.(아 이러다 잘릴라...)..뿌리를 뽑아야 성이 차서리....
그런데 문제점을 파악했습니다. ' (홑 따옴표) 이 한 점이 문제였습니다.
이 홑따옴표가 인식이 안되니...계속 연이어 버퍼에 집어넣음으로써 문제가 발생한 듯싶은데
왜 홑따옴표가 문제되는지 모르겠습니다.
정확히는 홑따옴표가 아닌 이상한 문자입니다.
홑따옴표가 아니라 반 따옴표에 반 space.
/ 정리: ' 를 따옴표로 인식하지 못하여 계속적인 필드로 인식해 버퍼에 한계점을
가져다 줌으로써 에러가 나는 현상인 듯 싶습니다.
아래에서 보면
,when 필드에 해당하는 내용에서 ',19991005 라면 숫자앞에 ' 문자가 좀 이상합니다.
앞에 알수없는 공백(?)이 들어가 있습니다. 그걸 제거하니 제대로 되네요.
랜덤하게 필드에서 에러납니다.. when 필드앞에서만 나는 게 아닙니다.
문제가 되는 필드는 17라인입니다(읔..이 글 작성하느라고
문제의 17라인 지워졌네요... /./ ...굳이 필요치 않을 거 같습니다).
우선 급하니 얼른 restore 해보시 바랍니다.
테스트가 끝난 완전한 화일을 새로 만들어 올리니 받으신 후
(ftp://database.sarang.net/incoming/ecms9_fine.tgz)
바로 재익님에게 연락하셔서 지우기시 바랍니다.
그리고 코딩하실때..어찌 하셨는지 함 보고 싶습니다. 함수를 적당히 사용하면
이런 문제는 해결이 되지 않을까 생각해 봅니다. 스크립언어는 무얼
사용하시는 지는 몰라도 php 이기를..^^
가슴이 시커멓게 되지 않았나 싶네요. 도움이 되었길...
p.s. 제익형..
이것이 버그라면, 뉴스그룹에 질문이 많다면 답해 주는 것도 좋으리라 생각되네요..
참고:
////////////////////////////////////////////////////////////////////////////
이리 테스트 해보았습니다. song'> 이 상태는 문제가 있다는 것이지요.
그래서 하나씩 조사해보니... ' 이 따옴표가 이상하더군요..
그래서 커서를 왔다갔다하니..건너뛰는 듯하고 ,..일단 제거하고
살행하니..흐...너무 잘 들어갑니다. 그래서 잔머리 굴리냐고
vi 에서 매칭해서 찾으니 잘 안 찾아지더군요.. 그 다음 방법은 당연히..
노가다죠..일일이 찾고 , 다시 멈추는 데서 보고 있다가 ctrl+c 눌러서 보고
그리고 그 줄 검사..이런식..후..좀 시간이 걸렸네요.
속이 타실텐데 얼른 restore 하십시오.
////////////////////////////////////////////////////////////////////////////
song=> insert into member (mid,id,pw,uid,grade,name,idno,sex,age,mail,job,phone,cp,beeper,zip,address,ho
mepage,cname,cdept,ctitle,cphone,cpex,caddress,czip,hobby,marry,last_edu,religion,recommenderid,comment,when) values (1606,'xxxxx ','0135 ','redpig ',0,'강xx ','8xxxx1818xxxx1',1,17,'xxxx@hanmail.net ',
song/> '학생 ','(0551)2x1/x269 ',' ','012/1x02/x2x1
',' ',
song/> '경남 창원시 상남동 112동xxx호 ','
','창원남고 ',' ','1302 ',' ',0,
song/> ' ',' ','컴가지고 놀기,운동,비트
매냐 ',0,' ',
song/> ' ',' ',
song/> '전 델타포스 길드[ATOM]을 창안했습니당.
song'> 근데 안타깝게도 홈페이지 만들줄을 몰라여.
song'> 주위에선 책보고 하라지만,인터넷을 통해 알아보는것과, 전문가님의 지적이 필요한것 같습니당.
song'> 그래서 말인데요,제발 홈페이지 제작법을 상세히,쉽게 알려주세요~회답부탁합니당~~^^괠,
song'>
이곳에서 에러가 발생합니다.
, 를 기준으로 하나씩 입력한 결과 comment 필드에서 문제가 있는 듯 싶습니다.
왜 몇몇 레코드만 그런지 이유는 모르겠습니다.
회답부탁합니당~~^^뇻 </// 이부분에서 에러
실제로 커서를 왔다갔다 해 보십시오....^^
//////////////////////////////////////////////////////////////////////////////////////////
그럼 도움이 되었기를 바라며....
순돌이 올림.
|