Qpid
  1. Qpid
  2. QPID-3039

explicitly define the included debug info instead of relying on defaults which can differ between compilers

    Details

    • Type: Improvement Improvement
    • Status: Resolved
    • Priority: Major Major
    • Resolution: Fixed
    • Affects Version/s: 0.5, 0.6, 0.7, 0.8
    • Fix Version/s: 0.9
    • Component/s: None

      Description

      It'd be good if we can turn on the debugging information of the source by default. A production user must turn them off and re-compile if required.

      Rajika

      1. QPID-3039.patch
        0.6 kB
        Rajika Kumarasiri

        Activity

        Hide
        Robbie Gemmell added a comment -

        Hi Rajika,

        I have just tested this patch and found it resulted in no difference in the compiled class files, they were 100% binary identical. If I change the new 'debuglevel' definition to be only "lines,source" then my compiled files do differ from normal and become smaller. This would explain why I have never had an issue remote debugging the default output and you have; your compiler obviously has different defaults than mine. Can I ask what JVM/JDK etc you are using?

        The man page for javac (Sun JDK) and the manual page for the Ant javac task suggest that our existing javac usage should indeed result in inclusion of all debug information if using the Sun JDK, and always has in my case. However there is one area of ambiguity where it is mentioned that using javac -g without arguments will include all debug information, but then goes to says that it only generates lines and source debug info by default. My test clearly shows I am seeing the former behaviour, whereas you would seem to have seen the latter behaviour.

        I have applied the patch, but will rename the JIRA to better indicate what is actually being changed.

        Regards,
        Robbie

        Show
        Robbie Gemmell added a comment - Hi Rajika, I have just tested this patch and found it resulted in no difference in the compiled class files, they were 100% binary identical. If I change the new 'debuglevel' definition to be only "lines,source" then my compiled files do differ from normal and become smaller. This would explain why I have never had an issue remote debugging the default output and you have; your compiler obviously has different defaults than mine. Can I ask what JVM/JDK etc you are using? The man page for javac (Sun JDK) and the manual page for the Ant javac task suggest that our existing javac usage should indeed result in inclusion of all debug information if using the Sun JDK, and always has in my case. However there is one area of ambiguity where it is mentioned that using javac -g without arguments will include all debug information, but then goes to says that it only generates lines and source debug info by default. My test clearly shows I am seeing the former behaviour, whereas you would seem to have seen the latter behaviour. I have applied the patch, but will rename the JIRA to better indicate what is actually being changed. Regards, Robbie
        Hide
        Rajika Kumarasiri added a comment -

        A small patch to fix the problem.

        Rajika

        Show
        Rajika Kumarasiri added a comment - A small patch to fix the problem. Rajika

          People

          • Assignee:
            Robbie Gemmell
            Reporter:
            Rajika Kumarasiri
          • Votes:
            0 Vote for this issue
            Watchers:
            0 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved:

              Development