Search

'오라클'에 해당되는 글 2건

  1. 2009.04.22 오라클의 Sun 인수에 대하여...
  2. 2008.10.09 addBatch 사용시 SQLException 특이한거

오라클의 Sun 인수에 대하여...

5. IT 이야기 2009.04.22 15:18 Posted by 지누셩


Sun이라는 역사가 깊은 회사는..
Java라는 걸쭉한 제품을 잡으며 일약 스타로 떠올랐고..
서버도 팔고 OS도 만들고 Java기술을 선도하는 대단한 회사였건만..
자바로는 죽 쑤어서 개주고..
서버는 발전을 안하고... 자꾸자꾸 다른회사에 밀리는 상황에서..
Sun은 뭘로 먹고 살고 있을까라는 생각이 잠깐들었던 적이 있었다..

아니나 다를까 얼마전부터 IBM 이 Sun을 인수한다는 소문이 들리고 있었다.
한동한 Sun Microsystems는 뻘짓을 하고 있었기 때문에..
이제좀 정리되는 구나.. 라는 생각을 막연히 하고 있었다...

그래도.. IBM이 인수하는것은 조금 모양이 좋지 않아 보이기는 했다..
IBM은 하드웨어/OS/Software를 모두 총괄하는 엄청나게 큰 회사가 아닌가..
서버시장에서 독보적인 존재였고, OS인 AIX도 당연히 같이 끼워 팔고, JVM도 만들고, WAS도 만드는...
그뿐이랴.. 비즈니스 솔루션들도 너무 많이 가지고 있지 않은가...
기업시장에서 IBM은 정말 다 가지고 있는 회사였기 때문에...
꼭.. Sun이라는 회사가 필요할까?? 라는 생각이 들었는데...
아니나 다를까.. 인수가 무산되고 말았다.

그래도.. 그래도.. 외 하필 오라클이냐...ㅡ,.ㅜ

오라클은 이분야에서 유명한 폭군이 아닌가??
특히 우리나라에서의 오라클이라는 회사는 폭군이다.
우리제품 쓰려면 쓰고, 말려면 말아라 라는 식의 영업과.. 기술지원이란...
그뿐이랴.. 가격도 비합리적이다..
그럼에도 불구하고.. 다른 제품을 쓸수 없는 구조를 가지고 있기 때문에.. (우리나라는 이게 너무 문제긴하다.)
어쩔수 없이 울며 겨자먹기로 사용하는 오라클 DBMS 제품..
사실 반독점이라고 해도 맞을 만큼 우리나라에서 DB는 무조건 오라클이라는 공식이 있다.

BEA를 오라클이 인수했을때.. 엄청 놀랐었다.
왜.. 하필.. 오라클이냐...
폭군에게 칼을 들려준 격이 되는것 아닌가..
우리가 택할수 있는 WAS제품군이 얼마 안되는 상황에서 오라클에게 가장 잘나가는 BEA라는 회사를 주다니...
업계가 한동안 이것 때문에 들썩 거렸었다..

이제.. SUN까지 인수해 버리면...
오라클은 이제 다 가지게 되는게 아닌가..
서버 제품군 / OS / Java 기술 / WAS / DB
도대체 어쩌라는 거냐...

이제는 IBM / 오라클 / MS 의 3강 구도가 될듯 싶다..
MS는 플렛폼이 다르니 자바 진영에서는 IBM과 오라클 둘중에 하나밖에 선택할수가 없구나..
티맥스가 분발해서.. 어떻게좀 해줬으면...

아무튼 나는 이 결혼 반대요~!!
저작자 표시 비영리
신고

댓글을 달아 주세요

개발환경 :
웹로직 10.0 MP1
오라클 10.2.0.3

이런 오류가 떨이진다..

java.sql.SQLException: executeBatch, Exception = null
        at weblogic.jdbc.wrapper.JDBCWrapperImpl.invocationExceptionHandler(JDBCWrapperImpl.java:141)
        at weblogic.jdbc.wrapper.PreparedStatement.executeBatch(PreparedStatement.java:164)
        at com.tys.frameplus.dataplus.core.DataManager.updatePrepared(DataManager.java:836)
        at com.tys.frameplus.dataplus.core.DataManager.execute(DataManager.java:340)
        at com.tys.frameplus.dataplus.core.DataManager.execute(DataManager.java:204)
        at com.tys.frameplus.dataplus.core.DataManager.execute(DataManager.java:190)
        at com.tys.frameplus.dataplus.core.SQLProcessor.execUpdate(SQLProcessor.java:709)
        at com.tys.frameplus.dataplus.core.SQLProcessor.execute(SQLProcessor.java:342)
        at com.tys.frameplus.dataplus.core.SQLProcessor.execute(SQLProcessor.java:199)
        at com.tyli.egis.core.vi.dc.ExcelMGT.ExcelEJB.modifyAcntCodAdmn(ExcelEJB.java:429)
        at com.tyli.egis.core.vi.dc.ExcelMGT.ExcelEJB.process(ExcelEJB.java:125)
        at com.tys.frameplus.core.ejb.GenericEJB.preProcess(GenericEJB.java:127)
        at com.tyli.egis.core.vi.dc.ExcelMGT.ExcelEJB_49r0y4_EOImpl.preProcess(ExcelEJB_49r0y4_EOImpl.java:61)
        at com.tyli.egis.core.vi.dc.ExcelMGT.ExcelEJB_49r0y4_EOImpl_WLSkel.invoke(Unknown Source)
        at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:174)
        at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:335)
        at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
        at com.tyli.egis.core.vi.dc.ExcelMGT.ExcelEJB_49r0y4_EOImpl_1001_WLStub.preProcess(Unknown Source)
        at com.tys.frameplus.core.invoker.RemoteEJBInvoker.invoke(RemoteEJBInvoker.java:74)
        at com.tys.frameplus.util.BizInvokerUtil.delegate(BizInvokerUtil.java:83)
        at com.tys.frameplus.util.BizBrokerUtil.callBizBroker(BizBrokerUtil.java:160)
        at com.tys.frameplus.util.BizBrokerUtil.callACBizBroker(BizBrokerUtil.java:82)
        at com.tys.frameplus.util.BizBrokerUtil.callDCBizBroker(BizBrokerUtil.java:100)
        at com.tyli.egis.core.vi.ac.ExcelMGT.ExcelEJB.importAcntCodAdmn(ExcelEJB.java:414)
        at com.tyli.egis.core.vi.ac.ExcelMGT.ExcelEJB.process(ExcelEJB.java:75)
        at com.tys.frameplus.core.ejb.GenericEJB.preProcess(GenericEJB.java:127)
        at com.tyli.egis.core.vi.ac.ExcelMGT.ExcelEJB_49r0y4_EOImpl.preProcess(ExcelEJB_49r0y4_EOImpl.java:61)
        at com.tyli.egis.core.vi.ac.ExcelMGT.ExcelEJB_49r0y4_EOImpl_WLSkel.invoke(Unknown Source)
        at weblogic.rmi.internal.ServerRequest.sendReceive(ServerRequest.java:174)
        at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:335)
        at weblogic.rmi.cluster.ClusterableRemoteRef.invoke(ClusterableRemoteRef.java:252)
        at com.tyli.egis.core.vi.ac.ExcelMGT.ExcelEJB_49r0y4_EOImpl_1001_WLStub.preProcess(Unknown Source)
        at com.tys.frameplus.core.invoker.RemoteEJBInvoker.invoke(RemoteEJBInvoker.java:74)
        at com.tys.frameplus.core.BizBroker.delegate(BizBroker.java:100)
        at com.tys.frameplus.miplatform.ActionController.callBizBroker(ActionController.java:203)
        at com.tys.frameplus.miplatform.eam.MiController.processRequest(MiController.java:130)
        at com.tys.frameplus.core.GenericController.doPost(GenericController.java:62)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:820)
        at weblogic.servlet.internal.StubSecurityHelper$ServletServiceAction.run(StubSecurityHelper.java:226)
        at weblogic.servlet.internal.StubSecurityHelper.invokeServlet(StubSecurityHelper.java:124)
        at weblogic.servlet.internal.ServletStubImpl.execute(ServletStubImpl.java:283)
        at weblogic.servlet.internal.TailFilter.doFilter(TailFilter.java:26)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
        at com.tys.frameplus.miplatform.GenericAuthFilter.processFilter(GenericAuthFilter.java:154)
        at com.tys.frameplus.miplatform.GenericAuthFilter.doFilter(GenericAuthFilter.java:67)
        at weblogic.servlet.internal.FilterChainImpl.doFilter(FilterChainImpl.java:42)
        at weblogic.servlet.internal.WebAppServletContext$ServletInvocationAction.run(WebAppServletContext.java:3393)
        at weblogic.security.acl.internal.AuthenticatedSubject.doAs(AuthenticatedSubject.java:321)
        at weblogic.security.service.SecurityManager.runAs(Unknown Source)
        at weblogic.servlet.internal.WebAppServletContext.securedExecute(WebAppServletContext.java:2140)
        at weblogic.servlet.internal.WebAppServletContext.execute(WebAppServletContext.java:2046)
        at weblogic.servlet.internal.ServletRequestImpl.run(Unknown Source)
        at weblogic.work.ExecuteThread.execute(ExecuteThread.java:200)
        at weblogic.work.ExecuteThread.run(ExecuteThread.java:172)

자바에서 제공하는 executeBatch 함수와 addBatch함수를 이용하여 개발하고 있는데.. (성능을 위해서..)
이런 특이한 오류가 발견되는것이 아닌가.. 음..

입력하려는 데이터는 약 1200건 정도..
데이터가 많은 양도 아닌데.. 오류가 발생하여 이상하다고 생각..
아래와 같은 것을 시도해 보았다..

1. JDBC드라이버 버전을 높은것으로 변경
오라클에 버그가 무지 많은것은 아는사람은 다 아는것.. ㅡ,.ㅡ
jdbc드라이버도 버그가 상당하다.
기본적으로 웹로직 10에서 제공하는 버전은 10.2.0.2
최신의 버전은 10.2.0.4

그래서 10.2.0.4로 업데이트를 해보았다..

동일한 증상. ㅡ,.ㅡ

뭘어떻게 하면 될까.. 모르겠다. 아웅.. 짜증나.

- 추가 09/08/10

어떤분이 해당 내용으로 질문을 하셨길래 정리해보았습니다.

우선 결론부터 말씀드리면..
답을 모르겠다입니다.ㅜㅜ

그냥 어쩌다가 해결이 되었는데....

제가 취한 조치는 아래와 같습니다.
1. 혹시 ibatis나 이런거 사용하신다면 쿼리에 줄바꿈/Tab과 같은 특수문자가 들어가는 경우가 많은데요. 이런 경우가 의심되어 모두삭제
2. 진짜 쿼리에 문제가 있는경우가 의심되더군요.. 일부만이라도 쿼리를 바꿔보세요.
3. 오라클 Function 을 사용하는 경우 . Function에서 오류가 발생했을 가능성.
4. parameter를 넣어주는데 null이 들어가는경우.. 혹은 parameter갯수나 위치가 바뀐경우.

위와 같이 저는 추축하고 있습니다만..
어찌어찌하다보니 해결이 되었습니다. 저는 4번을 강력히 의심하고 있답니다. ^^

답이 되었는지.. 도움이 되었는지 모르겠네요. ^^

신고

댓글을 달아 주세요



 

티스토리 툴바