When working with large projects, smart packages can sometimes cause performance issues. They can influence the time of a search, commit, and derived properties related operations. However, there is a way to identify which smart packages or properties cause the problem by getting notifications about their evaluation time.


To get notifications about the evaluation time of smart package content and derived properties


  1. Go to <modeling tool installation directory>/bin and open the properties file of your modeling tool.
  2. Enter the md.expression.evaluation.duration.notification.threshold Java argument and define the threshold time in seconds for getting notifications, e.g.:

    -Dmd.expression.evaluation.duration.notification.threshold=30
     

    Note

    The default value of the md.expression.evaluation.duration.notification.threshold argument is 60 seconds. If you add the argument to the properties file of your modeling tool but do not define its value, the default value is used.

  3. Save and close the file
  4. Restart your modeling tool if it's open.
     

Your modeling tool is now configured to show notifications about the evaluation time of smart package content and derived properties. The notifications are shown in the Notification Window area at the bottom of a modeling tool window.
 


Smart package content and property evaluation notifications - the time threshold applied is 1 second.

To disable notifications


  • Click Do not show this message again when a new notification appears on the right side of a modeling tool window.

Disabling notifications from a modeling tool.


This action disables notifications about the evaluation time of both smart package content and derived properties.


Tip

You can increase the performance of your modeling tool by following these recommendations:

  • Avoid using smart packages with Find queries, especially if they are used to find common elements (e.g., Class, Package, Block, etc.).
  • Avoid using smart packages with Find queries which have wide scope.
  • Avoid nesting smart packages, i.e., using one smart package as the part of another smart package's content.

Performance contents

In the Smart Package Specification window, you can take advantage of a new property, Use In Selection Dialogs, which allows you to work better with your smart packages. Previously, smart packages slowed down the opening of Selection dialog boxes. Use In Selection Dialogs allows users to exclude the smart package from the calculation of elements to display in Selection dialog boxes (e.g. Select Elements).