Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

While all platforms do not impose limits on the number of items that can be stored in a single directory, their API may limit the number of items that can be downloaded/uploaded. This means that when DryvIQ attempts to download content from the source that exceeds the platform API limit, errors may start to occur. The DryvIQ Platform engine also has a limit of how many items it can crawl and download from a single directory based on the environment setup, such as memory allocation.

  • A job in DryvIQ does not use a fixed amount of memory. Memory usage for individual jobs will vary based on a number of factors, the most significant one is the number of files and how those files are distributed (all in one folder, throughout sub-folders, etc.). The main factors for memory usage for a DryvIQ node will be number of concurrent jobs plus Parallel Writes Per Job for each job and the memory impact of the specific jobs.

...

To avoid these errors, it is recommended to configure the directory item limit policy for your job. This option is configurable with a default system maximum of 10,000 for a single directory, corresponding with most platforms recommendations. While some platforms such as Box may allow upwards of 15,000 items in a single directory, changing this configuration limit may result in reduced performance and potentially unexpected errors. To improve the performance of your transfer, it is recommended to use the DryvIQ system configuration of maximum 10,000 items per container. DryvIQ will identify the directories that exceed this limit , flag and notify with the following message: 

Other activity | Error activity

and flag these items.

  • When viewing the Log page for the job in the user interface, these items will be flagged, “Maximum number of items exceeded.” 

    Image Added

  • In the log files, these items will be flagged with
    "Level": "Error",
    "Name": "TransferExecutor",
    "Message": "The path exceeds the maximum number of 10,000 children: /path", (Note that the number of children will reflect the maximum number set if you edited the default limit.)

During remediation, evaluate the source content and move items into sub-folders until each directory contains 10,000 items or less. 

...

If memory issues occur due to increasing the Directory Item Limit or Parallel Writes Per Job, there is no other mitigation other than reducing the number of current jobs or breaking up the source content in to multiple jobs. DryvIQ will keep using memory until it runs out (it will not self-limit) and it will eventually reach the environment max. Reaching an environment max may result in a non-graceful termination of DryvIQ that could result in jobs re-transferring files, permissions or metadata.  In the case of larger jobs being stopped in this manner, they will enter recovery mode, continue to use all the memory, then get stopped again, in a loop causing a loss of throughput.

...