Publishing Performance: contentListChunkSize

TIL: PSPublisherService.runContentList generates a content list based upon the edition’s generator (sys_SearchGenerator, sys_PublishedSiteItems, sys_SelectedItemsGenerator). This content list is split into chunks based upon contentListChunkSize (default:1000).

In my instance we have an incremental edition associated to a content list generated through sys_SearchGenerator. We feed the following query into sys_SearchGenerator:

select rx:sys_contentid, rx:sys_folderid from nt:base where jcr:path like '//Sites/EnterpriseInvestments%'

This creates a content list containing all the content items (Seems a bit inefficient to retrieve all content items). If the content list is greater than contentListChunkSize then PSPublisherService.runContentList will divide this content list into chunks, and process each chunk until finished. In our development environment we have seen that by increasing contentListChunkSize to a larger value our editions will finish faster.

[TABLE=“width: 100%”]

Edition Content list size Total delivered contentListChunkSize Elapsed Time

Incremental
38407
82
1000
00:10:07 (HH:mm:ss)

Incremental
38407
82
5000
00:05:44 (HH:mm:ss)

[/TABLE]

Going to proceed with further testing; however, I wanted to also check to see if any other user has experimented with this server property. You can set this property through your

/path/to/rhythmyx/rxconfig/Server/server.properties

Add the following to the end:

contentListChunkSize=1000

You can watch your PSPublisherService debug by turning on this logger in

/path/to/rhythmyx/AppServer/serve/rx/conf/log4j.xml

Add within log4j:configuration:

	<category name="com.percussion.services.publisher">                <priority value="TRACE" />
        </category>


	<category name="PSIncrementalPublishingFilter">
		<priority value="TRACE" />
	</category>

This has been tested in CM System 7.1.0. Looking forward to feedback.

Any idea what the default value is? We don’t have that set in server.properties, but I’m going to play around with that and increasing the publishing thread count to try to get a little better performance out of publishing.

The default value for contentListChunkSize is 1000.