블루윙즈 서버를 세팅 후 휴지통 비우기가 되지 않는다는 보고가 있었습니다.
이는 라이믹스의 버그가 아니라 단순 기능 미흡 정도로 봐야할텐데요,
서버의 성능이 좌우되겠지만, 설정된 서버의 php 메모리가 낮아서가 이유입니다.
[09-Mar-2021 23:38:04 Etc/GMT-9] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in /home/bluewings/www/modules/trash/model/TrashVO.php on line 57 [09-Mar-2021 23:38:04 Etc/GMT-9] PHP Fatal Error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in modules/trash/model/TrashVO.php on line 57 [09-Mar-2021 23:38:04 Etc/GMT-9] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in /home/bluewings/www/common/autoload.php on line 127 [09-Mar-2021 23:38:04 Etc/GMT-9] PHP Fatal error: Allowed memory size of 134217728 bytes exhausted (tried to allocate 20480 bytes) in Unknown on line 0
해당 오류는 위와 같았습니다.
/etc/php/7.4/php.ini
위 파일에서 memory_limit = 128MB를 256MB로 수정해줍니다.
4만 5천개의 게시물을 비우려니 메모리가 많이 필요한가 봅니다.
max_execution_time = 30 -> 120 memory_list = 128 -> 512MB
service php7.4-fpm restart service nginx restart
vi /home/bluewings/logs/error.log
콘텐츠->휴지통의 경우
'휴지통 비우기' 버튼이 있기는 하나, 휴지통의 글이 아주 많은 경우라면
이걸로 비우면 중간에 메모리 에러가 발생하게 된다.
DB 에서 직접 휴지통 글을 제거하는 방법도 있긴하지만 ( xe_trash 테이블 )
휴지통으로 옮길때 XE 자체는, 댓글을 삭제하지 않고, 첨부파일도 삭제 않고 대기로 상태 변경을 하고, 포인트 회수 나 기타 관련트리거들이 전부 실행이 안 되기에
( 실제 실행되는건, documents 테이블에서 글자체만 제거 , 카테고리수 변경, 첨부파일 대기상태로 변경 뿐이다.
그 이외에는 휴지통으로 옮길때 처리하는게 아니라, 휴지통에 있던 글을 비우기로 삭제될때 이뤄진다 )
휴지통 비우기가 에러나면, 결국 휴지통 목록에서
우측의 checkbox 전체선택으로 현재 목록의 글을 다 선택한 후, '삭제'버튼으로 삭제해나가는 방법 뿐이다.
단, Core 기본은 한번에 30개만 목록에 노출되어있는데, 30개씩 일일이 지우는게 너무 지나친 노가다가 되면
이 목록의 노출개수를 늘리면 된다.
휴지통 목록은modules/trash/trash.admin.view.php 에서
dispTrashAdminList 함수에서
$args->list_count = 30; 값을 늘리시면 목록수가 늘어난다. 이걸 좀 늘리면서 하면 노가다가 좀 줄게 된다.
( 그렇다고 아주 크게 늘리면 어차피 일괄선택 후 처리하다가 에러 뜰거기에, 적당히 늘려가면서 사용 서버가 버티는 범위로 정해주는게 좋다 )
( 대기파일은 휴지통으로 이동된 글의 첨부파일 / 글 이나 댓글 등록시 첨부했다가 글이나 댓글 등록하지 않은 경우 에 발생하는거기에..)
저는 이렇게 500개로 설정해두고 한 페이지씩 지워갔습니다.
800, 1000은 아예 뻗어버리더군요.
modules/trash/queries/getTrashList.xml
<list_count var="list_count" default="500" />
추가로 이 파일도 같이 수정해야하더군요.
memory_list을 20480M 으로 수정해도 1000개, 800개는 무리더군요.
500개 정도로 타협봤습니다;
참조
http://sejin7940.co.kr/xe_tips/112299