mergeRecords() breaks InDesign Server CC 2018
Reference two forum posts:
https://stackoverflow.com/questions/52388399/indesign-server-crashing-on-data-merge
https://forums.adobe.com/thread/2536427
Posting as bug for the following reasons:
1) Nobody seems to know why it's happening
2) The script executes successfully with InDesign Desktop, but Server crashes (not just an error, full on stops).
4) It's the only method that crashes InDesign Server I've found. I'm able to perform frame creation, image placement, find / replace, export PDF, etc... which leads me to conclude it's not an issue with my installation.
3) Tested on 3 different computers
The following .jsx will crash InDesign Server (replace paths with any of your own merging document files):
var source = File("/Users/me/Desktop/example/example.indd");
var destination = File("/Users/me/Desktop/example/example.pdf");
var sourceData = File("/Users/me/Desktop/example/example.csv");
var doc = app.open(source);
doc.dataMergeProperties.selectDataSource(sourceData);
if (source.exists && destination.exists && sourceData.exists) {
try {
app.consoleout("Performing merge...");
doc.dataMergeProperties.mergeRecords(); // <-- Crashes here
} catch (err) {
app.consoleout(err);
}
} else {
app.consoleout("Something doesn't exist...");
}
InDesign Server will crash with the following error from the Server:
Tue Sep 18 09:48:21 2018 INFO [javascript] Executing Script
./InDesignServer: line 13: 30363 Segmentation fault: 11 "$installed_name" "$@"
The error report from the Terminal window that launched sampleclient responds with:
Error -1 fault: SOAP-ENV:Client [no subcode]
"End of file or no input: Operation interrupted or timed out"
Detail: [no detail]
The jsx code is checking if all of the files do in fact exist, and it passes those checks. I've since been able to work around this using doc.dataMergeProperties.exportFile(). However I can see this being an issue if instead of a PDF, I needed .INDD files to be created from a merge.