Project Home
Project Home
Documents
Documents
Wiki
Wiki
Discussion Forums
Discussions
Project Information
Project Info
Forum Topic - TIP#3 - Configuring Limits in the MME: (5 Items)
   
TIP#3 - Configuring Limits in the MME  
When using embedded systems with limited resources, there are many occasions where imposing limits will improve the 
overall user experience.

The MME provides limits in many ares that can aid the overall resource usage and speed. All of the limits can be 
adjusted via the MME configuration file.

#1) Synchronization Limits
-----------------------------------------
1a) Folder Limits
The MME can limit the number of folder items at synchronization to a given number. This number represents the total 
number of items that will be added from a directory to the MME database during synchronization.

1b) Folder Depth Limits
In many cases the ability to limit the depth of a file system on a media store is required.  The maximum depth of 
recursion can be set using "MaxRecursionDepth" configuration element.  After reaching the set value the synchronization 
process will end the recursion of the folder chain, returning to the last common level and continuing.

1c) Playlist Limits
Playlists created by end users, can be extremely large, processing this data can be limited using the "MaxLines" element
 in the "PLSS" section of the configuration file.  The value of this element will instruct the MME to stop processing 
the playlist file after reaching a set number of lines in the playlist.

1d) Synchronization Buffer Limits
The number of synchronization buffers that the MME uses while adding media data into the database is configurable using 
the "MaxSyncBuffers" configuration element.  Synchronization performance can be affected by this value, however the 
larger the value the larger the memory resource required is.

#2) Mediastore Limits
----------------------------------
The "MaxMediastores" element limit sets the maximum number of media stores that can be in the system at any time.  If 
this limit is reached, the MME will start to prune out the oldest media store, to make room for a new one.

#3) Database Usage Limits
-------------------------------------------
No embedded systems have an infinite amount of space to store media data collected during synchronization.  The MME can 
impose limits to the size of a database, before automatic pruning of old, unused data is started.  This limit can be set
 using the "MaxDatabaseSize" configuration element.










Re: TIP#3 - Configuring Limits in the MME  
> When using embedded systems with limited resources, there are many occasions 
> where imposing limits will improve the overall user experience.
> 
> The MME provides limits in many ares that can aid the overall resource usage 
> and speed. All of the limits can be adjusted via the MME configuration file.
> 
> #1) Synchronization Limits
> -----------------------------------------
> 1a) Folder Limits
> The MME can limit the number of folder items at synchronization to a given 
> number. This number represents the total number of items that will be added 
> from a directory to the MME database during synchronization.however the larger the value the larger the memory 
resource required is.
Sorry this is the number of items that will be examined in a given directory, not the number that will be added.
> 
> 1b) Folder Depth Limits
> In many cases the ability to limit the depth of a file system on a media store
>  is required.  The maximum depth of recursion can be set using "
> MaxRecursionDepth" configuration element.  After reaching the set value the 
> synchronization process will end the recursion of the folder chain, returning 
> to the last common level and continuing.
> 
> 1c) Playlist Limits
> Playlists created by end users, can be extremely large, processing this data 
> can be limited using the "MaxLines" element in the "PLSS" section of the 
> configuration file.  The value of this element will instruct the MME to stop 
> processing the playlist file after reaching a set number of lines in the 
> playlist.
> 
> 1d) Synchronization Buffer Limits
> The number of synchronization buffers that the MME uses while adding media 
> data into the database is configurable using the "MaxSyncBuffers" 
> configuration element.  Synchronization performance can be affected by this 
> value, however the larger the value the larger the memory resource required is
> .
> 
> #2) Mediastore Limits
> ----------------------------------
> The "MaxMediastores" element limit sets the maximum number of media stores 
> that can be in the system at any time.  If this limit is reached, the MME will
>  start to prune out the oldest media store, to make room for a new one.
> 
> #3) Database Usage Limits
> -------------------------------------------
> No embedded systems have an infinite amount of space to store media data 
> collected during synchronization.  The MME can impose limits to the size of a 
> database, before automatic pruning of old, unused data is started.  This limit
>  can be set using the "MaxDatabaseSize" configuration element.
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 


Re: TIP#3 - Configuring Limits in the MME  
In #1a
Sorry this is the number of items that will be examined in a given directory, not the number that will be added from 
this directory.  Items that do not match the predefined file inclusion rules will be examined, and will be counted 
against the total items, but will not be added to the database.
Re: TIP#3 - Configuring Limits in the MME  
> In #1a
> Sorry this is the number of items that will be examined in a given directory, 
> not the number that will be added from this directory.  Items that do not 
> match the predefined file inclusion rules will be examined, and will be 
> counted against the total items, but will not be added to the database.

If the set limit is reached for a given directory *and* at least one more match-able item exists (but won't be synced 
due to the set limit), is there a mechanism in place that can notify the application that not all items were 
synchronized?

I'm thinking of a situation where a user may have more tracks on his/her media store than reported and wonder why the 
others are not available.  If a suitable event were raised then the HMI could display "Only the first <limit> tracks can
 be displayed" as an alert/informational message to the user.  

I haven't tested the behaviour--maybe it's already there.

-asherk
Re: TIP#3 - Configuring Limits in the MME  
> > In #1a
> > Sorry this is the number of items that will be examined in a given directory
> , 
> > not the number that will be added from this directory.  Items that do not 
> > match the predefined file inclusion rules will be examined, and will be 
> > counted against the total items, but will not be added to the database.
> 
> If the set limit is reached for a given directory *and* at least one more 
> match-able item exists (but won't be synced due to the set limit), is there a 
> mechanism in place that can notify the application that not all items were 
> synchronized?

A MME_SYNC_ERROR_FOLDER_LIMIT event is emitted. It should be noted that "ERROR" is perhaps too string in this case (and 
some others) and the sync process will continue otherwise normally.