You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@harmony.apache.org by "Ivan Popov (JIRA)" <ji...@apache.org> on 2007/07/08 11:49:04 UTC

[jira] Created: (HARMONY-4391) [classlib][build] define macro NDEBUG for release build to remove trace messages

[classlib][build] define macro NDEBUG for release build to remove trace messages
--------------------------------------------------------------------------------

                 Key: HARMONY-4391
                 URL: https://issues.apache.org/jira/browse/HARMONY-4391
             Project: Harmony
          Issue Type: Improvement
          Components: Classlib
         Environment: Windows, Linux
            Reporter: Ivan Popov
            Priority: Minor


NDEBUG is a standard macro for C/C++ programs used in function assert(). It's recommended to define it for release build to remove assertion. Some programs use this macro also to remove other debug/trace code in release mode.

JDWP agent from jdktools/jpda component includes a lot of trace messages, which facilitate debugging and bug fixing. These trace messages gather a lot of additional data and significantly slow down agent performance and may cause leaks of memory and JNI references uses for additional data. Trace message should be removed from release build of JDWP agent by defining standard macro NDEBUG. Since jdktools component uses build scripts from classlib, then classlib build should define NDEBUG for compilation of native sources in release mode.


-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HARMONY-4391) [classlib][build] define macro NDEBUG for release build to remove trace messages

Posted by "Ivan Popov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Popov updated HARMONY-4391:
--------------------------------

    Attachment: H4391_classlib_build.patch

I'm attaching simple patch 'H4391_classlib_build.patch' for classlib build scripts, which define NDEBUG macro in release mode. With this patch JDWP agent works much faster in release mode.

This patch should be applied after patches for HARMONY-3472, otherwise it will cause warnings in compiling JDWP agent in release mode, which are treated as errors.


> [classlib][build] define macro NDEBUG for release build to remove trace messages
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-4391
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4391
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>         Environment: Windows, Linux
>            Reporter: Ivan Popov
>            Priority: Minor
>         Attachments: H4391_classlib_build.patch
>
>
> NDEBUG is a standard macro for C/C++ programs used in function assert(). It's recommended to define it for release build to remove assertion. Some programs use this macro also to remove other debug/trace code in release mode.
> JDWP agent from jdktools/jpda component includes a lot of trace messages, which facilitate debugging and bug fixing. These trace messages gather a lot of additional data and significantly slow down agent performance and may cause leaks of memory and JNI references uses for additional data. Trace message should be removed from release build of JDWP agent by defining standard macro NDEBUG. Since jdktools component uses build scripts from classlib, then classlib build should define NDEBUG for compilation of native sources in release mode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Assigned: (HARMONY-4391) [classlib][build] define macro NDEBUG for release build to remove trace messages

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky reassigned HARMONY-4391:
------------------------------------------

    Assignee: Gregory Shimansky

> [classlib][build] define macro NDEBUG for release build to remove trace messages
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-4391
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4391
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>         Environment: Windows, Linux
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>            Priority: Minor
>         Attachments: H4391_classlib_build.patch
>
>
> NDEBUG is a standard macro for C/C++ programs used in function assert(). It's recommended to define it for release build to remove assertion. Some programs use this macro also to remove other debug/trace code in release mode.
> JDWP agent from jdktools/jpda component includes a lot of trace messages, which facilitate debugging and bug fixing. These trace messages gather a lot of additional data and significantly slow down agent performance and may cause leaks of memory and JNI references uses for additional data. Trace message should be removed from release build of JDWP agent by defining standard macro NDEBUG. Since jdktools component uses build scripts from classlib, then classlib build should define NDEBUG for compilation of native sources in release mode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Closed: (HARMONY-4391) [classlib][build] define macro NDEBUG for release build to remove trace messages

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky closed HARMONY-4391.
--------------------------------------


No response, assuming ok.

> [classlib][build] define macro NDEBUG for release build to remove trace messages
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-4391
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4391
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>         Environment: Windows, Linux
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>            Priority: Minor
>         Attachments: H4391_classlib_build.patch
>
>
> NDEBUG is a standard macro for C/C++ programs used in function assert(). It's recommended to define it for release build to remove assertion. Some programs use this macro also to remove other debug/trace code in release mode.
> JDWP agent from jdktools/jpda component includes a lot of trace messages, which facilitate debugging and bug fixing. These trace messages gather a lot of additional data and significantly slow down agent performance and may cause leaks of memory and JNI references uses for additional data. Trace message should be removed from release build of JDWP agent by defining standard macro NDEBUG. Since jdktools component uses build scripts from classlib, then classlib build should define NDEBUG for compilation of native sources in release mode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Resolved: (HARMONY-4391) [classlib][build] define macro NDEBUG for release build to remove trace messages

Posted by "Gregory Shimansky (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Gregory Shimansky resolved HARMONY-4391.
----------------------------------------

    Resolution: Fixed

Patch applied at 559137. Classlib and jdktools built in release without problems. Please check that tracing is disabled in release now.

> [classlib][build] define macro NDEBUG for release build to remove trace messages
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-4391
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4391
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>         Environment: Windows, Linux
>            Reporter: Ivan Popov
>            Assignee: Gregory Shimansky
>            Priority: Minor
>         Attachments: H4391_classlib_build.patch
>
>
> NDEBUG is a standard macro for C/C++ programs used in function assert(). It's recommended to define it for release build to remove assertion. Some programs use this macro also to remove other debug/trace code in release mode.
> JDWP agent from jdktools/jpda component includes a lot of trace messages, which facilitate debugging and bug fixing. These trace messages gather a lot of additional data and significantly slow down agent performance and may cause leaks of memory and JNI references uses for additional data. Trace message should be removed from release build of JDWP agent by defining standard macro NDEBUG. Since jdktools component uses build scripts from classlib, then classlib build should define NDEBUG for compilation of native sources in release mode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.


[jira] Updated: (HARMONY-4391) [classlib][build] define macro NDEBUG for release build to remove trace messages

Posted by "Ivan Popov (JIRA)" <ji...@apache.org>.
     [ https://issues.apache.org/jira/browse/HARMONY-4391?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Ivan Popov updated HARMONY-4391:
--------------------------------

    Patch Info: [Patch Available]

> [classlib][build] define macro NDEBUG for release build to remove trace messages
> --------------------------------------------------------------------------------
>
>                 Key: HARMONY-4391
>                 URL: https://issues.apache.org/jira/browse/HARMONY-4391
>             Project: Harmony
>          Issue Type: Improvement
>          Components: Classlib
>         Environment: Windows, Linux
>            Reporter: Ivan Popov
>            Priority: Minor
>         Attachments: H4391_classlib_build.patch
>
>
> NDEBUG is a standard macro for C/C++ programs used in function assert(). It's recommended to define it for release build to remove assertion. Some programs use this macro also to remove other debug/trace code in release mode.
> JDWP agent from jdktools/jpda component includes a lot of trace messages, which facilitate debugging and bug fixing. These trace messages gather a lot of additional data and significantly slow down agent performance and may cause leaks of memory and JNI references uses for additional data. Trace message should be removed from release build of JDWP agent by defining standard macro NDEBUG. Since jdktools component uses build scripts from classlib, then classlib build should define NDEBUG for compilation of native sources in release mode.

-- 
This message is automatically generated by JIRA.
-
You can reply to this email to add a comment to the issue online.