we are using "Download DataSubset (On-Premise) " plugin in reports fo

we are using "Download DataSubset (On-Premise) " plugin in reports for export to excel option , this works well if we have less amount of data ,however , at times , we get internal 500 error with "ConcurrentModificationException" in logs , any one has any clue on why we get this exception ?

OriginalPostID-189862

OriginalPostID-189862

  Discussion posts and replies are publicly visible

  • Hi Rajashekhar,

    This issue might occur if the size of the data is more that 1 MB (This is the default limit for the query rule). OR DB is having corrupted data.
    - You can check if the rule which is returning the data is working fine and returning data correctly (If data is large). If this is memory issue this will throw error while retrieving data. Below are some points you check to resolve the issue.
    - If you are using a!queryEntity, try to fetch only selected columns using selection attribute, this will reduce the data size of returned data.
    - If this is memory issue, there are properties from Appian side you need to update to increase the limit for the data,
    refer this link for more details,
    forum.appian.com/.../Post-Install_Configurations.html
    - If this is not a memory issue, then u can check in there is any corrupted data in DB which you are trying to retrieve.

    Hope this gives you some pointers.
    ~ Ashish
  • @rajasekharv It would be able to attach logs so that the practitioners can review if there is any hidden root cause.

    As you are saying that your implementation is able to export small dataset, I don't think there is any problem with your implementation. I have seen issues more often when the size of dataset is large or size of 'input' parameter is large or when the plugin takes more than 60 seconds to complete. In short the plugin is more of constraints and would be helpful only when the implementation is small and simple. Also there are few posts in the forum that points out the limitations of the plugin.

    Just in case, if you aren't aware of the above scenarios, having a glance over the documentation at https://forum.appian.com/suite/help/7.10/Download_DataSubset_Plugin.html would let you know about various limitations.

    Further with respect to the suggestions made in the above comments, I don't think that increasing the memory or timeout limits of query, just for resolving the issue might not be elegant as this would be flagged in the Health Check as High Risk.
  • I have completely overcome this data size issue for this plugin by querying data in multiple batches and then combining all sets in one datasubset. Please refer to the attached two files for more details. By modifying the batch size, you can export any size of data to excel now using this plugin.

    exportToExcelInBatches.txt

    getDataForExcelExport.txt

  • AFAIK, whether the data is exported all at a time or in batches, the plugin fails when a large value is provided to 'input' parameter or a huge dataset is provided for export.
  • I tested this with 75 columns and more than 1000 records without any issues while doing in batches.