CI 묻고 답하기

제목 트랜젝션 관련 질문합니다..
글쓴이 작성시각 2015/12/03 09:27:49
댓글 : 3 추천 : 0 스크랩 : 0 조회수 : 18182   RSS
http://codeigniter-kr.org/etc_qna/view/5944/page/1 에 문제해결을 하려 조사도중

------
동시성제어 관련 select for update라는 구문을 봤습니다.
http://www.dator.co.kr/hotshin/textyle/236147
http://bookworm.pe.kr/2013/01/01/2642
------

트랜젝션이 실행되면 락이 걸리는거 같은데, LOCK IN SHARE MODE 인가요??

MariaDB [(none)]> show processlist;
+--------+---------+-----------------------+--------+---------+------+----------+---------------------------------------------------------------------------------------------+----------+
| Id     | User    | Host                  | db     | Command | Time | State    | Info                                                                                        | Progress |
+--------+---------+-----------------------+--------+---------+------+----------+---------------------------------------------------------------------------------------------+----------+
| 158797 | webuser | localhost             | ekklim | Sleep   |    4 |          | NULL                                                                                        |    0.000 |
| 745639 | webuser | ----:13741 | ekklim | Query   |   24 | Updating | uPDATE rsv_room_block SET rb_block_cnt = '16' WHERE rb_rm_no = 1 AND rb_date = '2015-11-01' |    0.000 |
| 747042 | root    | localhost             | NULL   | Query   |    0 | NULL     | show processlist                                                                            |    0.000 |
| 747209 | webuser | ----:14945 | ekklim | Sleep   |   28 |          | NULL                                                                                        |    0.000 |
+--------+---------+-----------------------+--------+---------+------+----------+---------------------------------------------------------------------------------------------+----------+
4 rows in set (0.00 sec)

MariaDB [(none)]> show processlist;
+--------+---------+-----------------------+--------+---------+------+-------+------------------+----------+
| Id     | User    | Host                  | db     | Command | Time | State | Info             | Progress |
+--------+---------+-----------------------+--------+---------+------+-------+------------------+----------+
| 158797 | webuser | localhost             | ekklim | Sleep   |    0 |       | NULL             |    0.000 |
| 745639 | webuser | ----:13741 | ekklim | Sleep   |    8 |       | NULL             |    0.000 |
| 747042 | root    | localhost             | NULL   | Query   |    0 | NULL  | show processlist |    0.000 |
+--------+---------+-----------------------+--------+---------+------+-------+------------------+----------+

745639번이 락이 걸린 상태입니다...
 다음글 construct 질문드립니다. (3)
 이전글 갑작스러운 DB 에러 (3)

댓글

kaido / 2015/12/03 10:26:03 / 추천 0
kill 로 락 걸린거 죽이세요
/ 2015/12/03 16:36:26 / 추천 0
//kaido
실제 서비스에서 발생한건 아니고 개발도중 동시성 관련 이슈가 있을거 같아서 테스트한 상황인데,
제가 락을 잘 몰라서 여쭤봤어요..
동시성 관련 이슈 어렵네요..
/ 2015/12/08 16:52:19 / 추천 0
select ~ for update 구문으로 해결했습니다.