Egloos | Log-in
결론에 가보기
결론에 가보기
[잡생각] 오픈소스의 어려운 점을 만나다!


이런 저런 오픈소스를 많이 가져다가 사용하는 우리 팀에서는 
피할수 없는 몇가지 문제가 있는데 지금까지 주로 만난 문제는 오픈소스의 버그이다. 

머 이제 이런 버그들은 구글링을 좀 해주고 뒤져보면 해결책이 꼭 있다.
듣보잡의 오픈소스를 쓰지 않고 좀 많이 쓰는 소스라고 하면 
내가 만난 문제를 다른 사람도 이미 만나서 힘들어 하고 있다 ^^

버그패치의 부분을 찾아서 소스를 직접 수정하기도 하고 (버그의 부분이 작을땐)
서비스전인 시스템이라면 버그패치가 된 버전으로 업그레이드 하기도 한다.
(잘 선택해야 한다 ^^ 그동안의 삽질이 날아갈수도 있으니 ^^)

하지만 이런 부분은 지금 만난 이 부분에 비하면 별거 아니다 -_-;;;;

Rails로 만들어진 이슈트래커 Redmine 을 가져와서 팀에서도 쓰고 있고 
회사에 전파해서 꽤 많이들 사용하고 있다.

그때 가져온 버전이 0.6.4이었는데 참조자 기능도 없고 기타 부족한 기능이 좀 있어서
우리 회사에 맞도록 소스를 조금 (사실 좀 많이 ㅠㅜ) 수정하였다.
기본적인 요구사항은 만족해서 사용하고 있었는데 점차 많이들 사용하고 있다가 보니깐 
이런 저런 추가적인 요구사항이 나오고 있다. 

이런 추가적인 요구사항들중 꽤 많은 부분이 Redmine 새로운 버전에서는 추가가 되어 있다. 
그래서 버전을 업그레이드 하면 많이 해결이 된다. 
말은 간단하다. 오픈소스의 최신버전(0.9버전)을 적용하면 된다. 

제길.. 윽하는 신음소리부터 나온다.

지금까지 사용한 데이터를 버릴수 없으니깐 마이그레이션을 해야 한다. 
rails에 있는 migration 기능을 쓸수는 없다.
필드를 A테이블에서 B테이블로 옮기는 경우 drop시키는 순간 데이터는 사라진다 ㅠㅜ.

결국 migration에 있는 명세를 따라가면서 db action을 따로 만들어야 한다.
(제발 migration 리스트가 100개 이하가 되기를 바래본다 ㅠㅜ)
이런 db action이 모두 완성이 되면 지금 서비스되고 있는 db를 백업하고 마이그레이션을 한다. 

여기까지 성공하였으면 절반정도는 한거지 ^^
그 다음은 소스 부분이다.

1년동안 버전업을 하지 않았기에, 우리에 맞도록 고쳐썼기때문에, 크게 많이 변경되었으면 정말 GG 이다. 
IDE를 통해서 특정버전과 비교해서 작업하는 방법이 있기는 하지만 대략 난감이다.

데이터베이스를 마이그레이션하고, 소스를 모두 업그레이드한 다음에 두개가 잘 결합하는지를 확인하여야 한다!!!

아.. 머리 아프다. 
흠.. 팀장님이 이 작업을 팀에 투입된 인턴사원한테 시킨다.. rails를 처음 써보는 신입에게 -_-;;;; 끙~

오픈소스를 쓸때 분명히 생각을 해야 한다.
지속적으로 업그레이드를 할것인가? 지금 버전으로 fix해서 그대로 갈것인가?

지속적인 업그레이드를 할것이라면 적용 단위를 정해서 꼭꼭 해줘야 한다. 
과거 redmine의 경우 1주일에 1시간정도 투자해야한다.

지금 버전으로 fix하고 추가 요구사항은 따로 개발한다면 이제 이것은 오픈소스로 업그레이드를 하는것은 아니다.
하게 되면 한두명은 죽어나간다.. 분명히! 

엔진과 서버와 같은 분명한 spec으로 동작하지 않는 
이런 서비스용 application의 오픈소스는 버전업을 미리 고민해놔야한다.
by 제우스 | 2010/01/06 15:56 | 컴퓨터 | 트랙백 | 덧글(4)
트랙백 주소 : http://zeous.egloos.com/tb/2512801
☞ 내 이글루에 이 글과 관련된 글 쓰기 (트랙백 보내기) [도움말]
Commented at 2010/01/06 17:31
비공개 덧글입니다.
Commented by 제우스 at 2010/01/07 11:14
좋은 아이디어이네요..

신규로 원할때마다 다 같은 버전이 아니라 계속 최신 버전으로 배포하는 것!! ^^
Commented by dolmengi at 2010/01/07 15:01
새해라고 글 자주 올리시네....-ㅅ-

오늘 모임 캔슬이라면서요!!

우케케~~~오늘 못 가는데 잘 됐어요!!

2주뒤에 꼭 올라갑니다. 그때 신나게 놀아유~~!!

젭알 모임 금요일로 해주세요.
Commented by 제우스 at 2010/01/07 15:11
구랴~
내가 어제 술을 좀 많이 마셔서.. 오늘 좀 힘들었는데. 다행이네 ^^

:         :

:

비공개 덧글

◀ 이전 페이지 다음 페이지 ▶

카테고리
영화나 책
말말말
컴퓨터
게임이야기
태그
나꼽살 보험 웹개발자 재태크 오픈세미나 하이코드 화성학 공연 파워코드 vanish 메이저코드 개발 마이너코드 개발자 라이프사이클 서버개발 슬럼프 ror helloworld 직업 똑바로일하라 원리 2nd밴드 게임 제이슨프라이드 ngrinder 기타코드 스테가노그래피 디아블로3
전체보기
최근 등록된 덧글
PLAY CASINO GAMES ONLINE: ..
by SCXD at 04/04
PLAY CASINO GAMES ONLINE: ..
by SCXD at 04/04
엄지척 바짝 올립니다. 궁금했던..
by 초보 at 10/11
다자가이든 소작이든 닭이 천 마리..
by yada at 09/20
나는 팔라독 헬 깸.
by 남영찬 at 06/17
^안녕.하세요^;; 골드팟 생기개..
by 전설의레전드소설책 at 03/25
이왕이면---- A7 등등 '7' 이 붙는..
by papagoat at 04/12
매우 감사합니다 ! 아주 쉽게 키..
by papagoat at 04/12
자꾸 F를 라로 표기하시네요 ㅎㅎ
by 안녕하세요 at 12/21
시 클라식 기타 코드표 도 보여..
by 강초보 at 06/08
라이프로그
똑바로 일하라
똑바로 일하라

펜트하우스 코끼리
펜트하우스 코끼리

화폐전쟁
화폐전쟁

10억
10억

거북이 달린다
거북이 달린다

용의자 X의 헌신
용의자 X의 헌신

마더
마더

터미네이터 : 미래전쟁의 시작
터미네이터 : 미래전쟁의 시작

스타트렉 더 비기닝
스타트렉 더 비기닝

천사와 악마
천사와 악마

노잉
노잉

7급 공무원
7급 공무원

박쥐
박쥐

인사동 스캔들
인사동 스캔들

와이키키 브라더스
와이키키 브라더스

매란방
매란방

건투를 빈다
건투를 빈다

코끼리는 생각하지 마
코끼리는 생각하지 마

배려
배려

벤자민 버튼의 시간은 거꾸로 간다
벤자민 버튼의 시간은 거꾸로 간다

작전
작전

워낭소리
워낭소리

작전명 발키리
작전명 발키리

적벽대전 2 : 최후의 결전
적벽대전 2 : 최후의 결전

트랜스포터 - 라스트미션
트랜스포터 - 라스트미션

디파이언스
디파이언스

사랑하지 않으면 떠나라!
사랑하지 않으면 떠나라!

촐라체
촐라체

쌍화점
쌍화점

황후화
황후화

크리스마스 별장
크리스마스 별장

눈먼 자들의 도시
눈먼 자들의 도시

예스맨
예스맨

순정만화
순정만화

펀치 레이디
펀치 레이디

눈에는 눈 이에는 이
눈에는 눈 이에는 이

전략적 책읽기
전략적 책읽기

돈, 뜨겁게 사랑하고 차갑게 다루어라
돈, 뜨겁게 사랑하고 차갑게 다루어라

좋은 놈, 나쁜 놈, 이상한 놈
좋은 놈, 나쁜 놈, 이상한 놈

다크 나이트
다크 나이트

H2 1
H2 1

그림으로 읽는 생생 심리학
그림으로 읽는 생생 심리학

호모 코레아니쿠스
호모 코레아니쿠스

강철중: 공공의 적 1-1
강철중: 공공의 적 1-1

이채원의 가치투자
이채원의 가치투자

쿵푸 팬더
쿵푸 팬더

카불의 사진사
카불의 사진사

인디아나 존스 4 - 크리스탈 해골의 왕국
인디아나 존스 4 - 크리스탈 해골의 왕국

시골의사의 부자경제학
시골의사의 부자경제학

종자돈 700만 원으로 부동산 투자 200억 만들기
종자돈 700만 원으로 부동산 투자 200억 만들기

우리동네
우리동네

디지로그 digilog
디지로그 digilog

대하소설 주역 4
대하소설 주역 4

읽지 않은 책에 대해 말하는 법
읽지 않은 책에 대해 말하는 법

Stick 스틱!
Stick 스틱!

색즉시공 시즌 2
색즉시공 시즌 2

바르게 살자
바르게 살자

20대는 통장을, 40대는 인생을 채워라
20대는 통장을, 40대는 인생을 채워라

점퍼
점퍼

생로병사의 비밀
생로병사의 비밀

추격자
추격자

오늘의 거짓말
오늘의 거짓말

주식시장을 이기는 작은책
주식시장을 이기는 작은책

대한민국 진화론
대한민국 진화론

무방비 도시
무방비 도시

피라니아 이야기
피라니아 이야기

우아한 세계
우아한 세계

경제를 읽는 기술
경제를 읽는 기술

실용주의 프로그래머
실용주의 프로그래머

블로그 비즈니스
블로그 비즈니스

어거스트 러쉬
어거스트 러쉬

세븐데이즈
세븐데이즈

뷰티풀 선데이
뷰티풀 선데이

괴물 1
괴물 1

킹덤
킹덤

당신과 일하기 힘들어 죽겠어
당신과 일하기 힘들어 죽겠어

뉴욕의 프로그래머
뉴욕의 프로그래머

나를 바꾸는 데는 단 하루도 걸리지 않는다
나를 바꾸는 데는 단 하루도 걸리지 않는다

벽오 금학도
벽오 금학도

해바라기
해바라기

펀드투자가 미래의 부를 결정한다
펀드투자가 미래의 부를 결정한다

상식이 통하는 웹사이트가 성공한다
상식이 통하는 웹사이트가 성공한다

아버지의 가계부
아버지의 가계부

본 얼티메이텀
본 얼티메이텀

최강 로맨스
최강 로맨스

여자도 여자를 모른다
여자도 여자를 모른다

부동산 10년 대폭락 시나리오
부동산 10년 대폭락 시나리오

아키텍트 이야기
아키텍트 이야기

보물지도
보물지도

오션스 13
오션스 13

게임회사 이야기
게임회사 이야기

바람피기 좋은 날
바람피기 좋은 날

조폭 마누라 3
조폭 마누라 3

삼미 슈퍼스타즈의 마지막 팬클럽
삼미 슈퍼스타즈의 마지막 팬클럽

광기와 우연의 역사
광기와 우연의 역사

런어웨이
런어웨이

회사가 당신에게 알려주지 않는 50가지 비밀
회사가 당신에게 알려주지 않는 50가지 비밀

롱테일 법칙
롱테일 법칙

해리 포터와 불사조 기사단
해리 포터와 불사조 기사단

사소한 것에 목숨 걸지 마라 - 습관 바꾸기 편
사소한 것에 목숨 걸지 마라 - 습관 바꾸기 편

우리가 미처 알지 못한 소프트웨어 공학의 사실과 오해
우리가 미처 알지 못한 소프트웨어 공학의 사실과 오해

트랜스포머
트랜스포머

20대부터 시작하는 스트레스 제로기술
20대부터 시작하는 스트레스 제로기술

미운오리새끼의 출근
미운오리새끼의 출근

캐리비안의 해적 : 세상의 끝에서
캐리비안의 해적 : 세상의 끝에서

미녀는 괴로워
미녀는 괴로워

유태우 교수의 내몸개혁 6개월 프로젝트
유태우 교수의 내몸개혁 6개월 프로젝트

브레이크 업 : 이별후애(愛)
브레이크 업 : 이별후애(愛)

인사이드 맨
인사이드 맨

마키아벨리, 회사에 가다
마키아벨리, 회사에 가다

웹 2.0 경제학
웹 2.0 경제학

한반도
한반도

연애, 그 참을 수 없는...
연애, 그 참을 수 없는...

구미호 가족
구미호 가족

럭키 넘버 슬레븐
럭키 넘버 슬레븐

찰리와 초콜릿 공장
찰리와 초콜릿 공장

아파트
아파트

레전드 오브 조로
레전드 오브 조로

rss

skin by jiinny
X