Menu

#287 Spindle 3.1.27 locking up RSA 6.0.0.1

open-wont-fix
Spindle (154)
5
2005-08-21
2005-07-20
Mike Perham
No

I'm running Rational Software Architect 6.0.0.1 based
on Eclipse 3.0.2 and have Spindle 3.1.27 installed.
Ever since I installed it, I'm seeing about 5-10
lockups per day. It happens usually right as I modify
a page/html and try to save it. The tab with the
filename still contains the * denoting the fact that
this file has been modified but upon restart I find
that my changes were persisted. So the lockup seems to
happen between the file save and the UI update to
remove the *.

I have no idea if any of that is relevant to you. I do
see lockups in other places but that is the most
frequent example.

Discussion

  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    open the ErrorLog View. clear the log, then reproduce the
    problem. Pls attach the entire contents of the log *as an
    attachment* to this report.

    thx.

     
  • Mike Perham

    Mike Perham - 2005-07-23

    Logged In: YES
    user_id=3114

    I'm seeing the exact same behavior on my home machine using
    completely different software: Mac OSX, Eclipse 3.1 final
    and Spindle 3.2.0. Attached is the plugin error log. The
    crash happens at 52 seconds. I left one error before that
    to show that it seems to be a race condition - the same
    error occurs but no lockup.

     
  • Mike Perham

    Mike Perham - 2005-07-23

    Crash upon build

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    thanks for the trace mike.

    didn't help much so I have crafted a version of the core
    spindle jar to give more interesting info.

    download this file:
    http://spindle.sourceforge.net/unstable/core.jar

    1. stop eclipse
    2. replace
    eclipse/plugins/com.iw.plugins.spindle.core_3.2.0/core.jar
    with the one you downloaded
    3. Reproduce the problem/attach the new log to this report.

    Thanks!

    Geoff

     
  • Mike Perham

    Mike Perham - 2005-07-23

    Logged In: YES
    user_id=3114

    Now this should give you a clue:

    java.lang.NoClassDefFoundError:
    org/apache/xerces/impl/dv/dtd/DatatypeValidatorFactory
    at
    com.iw.plugins.spindle.core.parser.Parser.checkDomParser(Parser.java:182)
    at
    com.iw.plugins.spindle.core.parser.Parser.domParse(Parser.java:285)
    at
    com.iw.plugins.spindle.core.parser.Parser.parse(Parser.java:244)
    at
    com.iw.plugins.spindle.core.parser.Parser.parse(Parser.java:232)
    at
    com.iw.plugins.spindle.core.parser.Parser.parse(Parser.java:21

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    interesting.

    Mike, you should check a few things..

    a. pls confirm that there is an
    eclipse/plugins/org.apache.xerces_4.1.13 directory

    b. is your JRE using another version of xerces, either using
    the "endorsed" directory method or by the fact the vm
    launching eclipse is a 1.5 vm?

    Trying to narrow it down. The spindle parser requires a
    particular version of xerces and if another version muscles
    in things go to pot.

    G.

     
  • Mike Perham

    Mike Perham - 2005-07-24

    Logged In: YES
    user_id=3114

    Below is the 4.0 xerces dir. Eclipse is being launched from
    a 1.4.2 VM and the endorsed dir is empty.

    eclipse-3.1/plugins/org.apache.xerces_4.0.13

     
  • Mike Perham

    Mike Perham - 2005-07-24

    Logged In: YES
    user_id=3114

    FYI my eclipse build is 3.1.0 I20050627-1435.

     
  • Mike Perham

    Mike Perham - 2005-07-24

    Logged In: YES
    user_id=3114

    I have Subclipse, SpringIDE and the 3.1 beta Hibernate
    plugin installed also. Is it possible that one of them
    deleted the proper version and installed an older version?
    That sounds like a monumentally stupid thing to do but it
    may be possible.

    Also if you want to coorespond via email to make things
    easier, please let me know at mperham AT gmail.com.

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    Is there like a time limited free version of RSA 6.0.0.1
    that I can use to track this bug down and kill it?

     
  • Mike Perham

    Mike Perham - 2005-08-20

    Logged In: YES
    user_id=3114

    Not that I know of.

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    actualy I just found a free trial and am downloading it now.
    However, the dl has over an hour to go. Being as it's
    saturday and I'm a dad I won't be able to try it out before
    tomorrow or monday.

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    Not good news I'm afraid.

    RSA 6.0.0.1 ships with a jre. When you launch it that jre is
    invoked.

    eclipse.vm=C:\ECLIPSE\IBM\Rational\SATrial\6.0\.\eclipse\jre\bin\javaw.exe

    looking in the jre/lib folder there is an xml.jar that
    contains xerces. Thus, the version of xerces that ships with
    Spindle is not used, and Spindle breaks.

    Spindle is not compatible with RSA 6.0.0.1 as shipped. I
    suppose one could try using another JRE but I would not
    recommend it as one does not know what new and interesting
    ways the new JRE will break RSA.

    Sorry.

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    You will need to remove Spindle in order to restore RSA to
    working order.

     
  • Geoffrey Longman

    • status: open --> open-wont-fix
     
  • Mike Perham

    Mike Perham - 2005-08-21

    Logged In: YES
    user_id=3114

    Well, let's look at it another way - there's a million
    different versions of XML parsers out there, many of which
    are shipped with different versions of JREs. One could make
    a claim that Spindle relying on one specific version of one
    parser is actually pretty limiting. Is it possible to
    "genericize" Spindle's code so it is a little more flexible
    in its use of XML parsers?

    If not, I'd suggest adding some code to either warn the user
    about the incompatability (like a dialog on startup) or
    disabling the feature(s) that rely on that particular
    version. I know that highlighting seems to work reliably
    but the build does not.

    Nonetheless, thanks for going the extra mile on this one, Geoff.

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    Yes its limiting. But there was, and generally still is, no
    parser out there that would gather the extra metadata needed
    by Spindle. There is no way to *fix* the problem as it
    exists now.

    That said, WTP has solved the same problem I did (by hacking
    Xerces), and in a more compaitble way. In the long run the
    plan is to ditch the custom parser and use the models
    provided by WTP. Of course there will be catastrophic
    conflicts with RSA until IBM releases a version of RSA that
    uses WTP 1.0. So, you can't win in the short term.

    As far as cobbling something together so that Spindle (sans
    builder) will work in some form in RSA: the resulting
    benefits will be so small as to really not make it worth the
    effort (effort on my part to cobble or more importantly the
    effort on your part to bother installing Spindle).
    ***Everything**** in Spindle except syntax highlighting and
    the most basic XML syntax completion depends on the results
    of a successful build. You will get the same benefit from
    using the xml editor that ships in RSA.

    I'll see if I can't at least put in a check and warning for
    this problem but the only real action I can take is to
    disable the whole shootin match.

     
  • Geoffrey Longman

    Logged In: YES
    user_id=387057

    disabling the feature ( in cases where the correct version
    of Xerces is unavailable) is possible in theory but not
    practical in the current codebase.

    Leaving open for others who stumble onto this problem.

     

Log in to post a comment.