Troubleshooting

Intelligent downloader explained

Summary

This KB article will explain the intelligent downloader and give the best practices to upgrade your self-healed software by benefiting from this feature through Filesets / Payloads.

Intelligent Downloader

When a Fileset / Payload is deployed and the time to download has come, the FileWave Client will check for existing exact copies of the Fileset files before it starts the download.

The match is met only if:

  1. The file exists with the same name.
  2. The file size matches.
  3. The file CRC matches.

The client will skip downloading all files that match existing copies on the disk.

The Client will also skip the download in two other cases:

  1. The Fileset files are set to never overwrite when the Fileset property "Don't overwrite existing files upon deployment" is checked.
  2. The files creation date is newer than the ones in the server and this Fileset property is checked "Overwrite only if existing file is older".

Upgrading your Software

There are two scenarios to best upgrade your self-healed software (we assume Fileset v1 is active on the clients)

  1. Create the association to Fileset v2, delete the association to Fileset v1 and update the model. (this will start the upgrade immediately)
  2. Create the association to Fileset v2 and set it to activate at some time in the future eg: 06:00PM and then make the Fileset v1 to Delete at 06:01pm (some time after v2 has activated)

    Note: If you set the delete time of v1 before activating v2, you end up deleting files that are needed to activate v2 and the missing files will download at verification. So, to best benefit from the intelligent downloader, it is better to go for 2. knowing that deleting Fileset v1 at 06:01PM will not delete common files with v2.

Fileset Status meanings

Fileset Inventory Status

In the stable below are the Fileset status codes that can occur in FileWave and some steps to reproduce some of them.

Code

Status Type

Severity

Fileset Status (Client Info)

Deployment Status

Available Platform(s)

Steps to Reproduce

0

UNKNOWN_ERROR

WARNING

Fileset Error

WARNING

   

1

STATUS_IDLE

OK

Idle

REMAINING

 

N/A

2

STATUS_FILESET_DOWNLOADING

ACTIVITY

Downloading: #%

REMAINING

   

3

STATUS_FILESET_DOWNLOADED

OK

Downloaded

REMAINING

   

4

STATUS_FILESET_ACTIVATED

OK

Installed as dependency

Installed via Kiosk

Active

COMPLETED

macOS

Windows

 

5

STATUS_FILESET_MADE_PASSIVE

OK

Passive

COMPLETED

 
  1. Create and associate a fileset to a client
  2. Edit the association to make the files passive in the near future
  3. Update Model
  4. Check Client Info > Filesets Status at time when fileset is to be made passive

6

STATUS_FILESET_DELETED

OK

Deleted

COMPLETED

iOS

Easiest to see with iOS

  1. Create an iOS App Store fileset
  2. Associate the fileset to an iOS client
  3. Update Model
  4. After app installs and Client Info > Filesets Status shows 'Installed Successfully', delete the app from the device
  5. Close and reopen Client Info (triggers MDM commands)
  6. Open Client Info > Filesets Status for the client

7

STATUS_FILESET_INSTALLED_SUCCESSFULLY

OK

Installed successfully

COMPLETED

iOS

 

8

STATUS_FILESET_INSTALL_FAILURE

WARNING

Install failed

ERROR

   

9

STATUS_FILESET_DISK_FULL

WARNING

Disk full

ERROR

 
  1. Create a massive dummy file on the client to eat up disk space
    1. Windows: fsutil file createnew FILENAME BYTES
    2. macOS: mkfile -n SIZE[b|k|m|g] FILENAME
  2. Create another massive dummy file on the Admin to use in fileset
  3. Create an Empty fileset and add the dummy file
  4. Associate the fileset to a client
  5. Update Model & perform Verify for client

10

STATUS_FILESET_INSTALLER_RUNNING

ACTIVITY

Installer running now

REMAINING

   

11

STATUS_FILESET_ERROR

WARNING

iOS: Please log in to your iTunes Store account

Desktop: Error: 4

ERROR

 

Now only see "Error: 4" if setting last_status for fileset to 11 manually in admin.user_status table

 

Steps (iOS)...

  1. Do not sign into iTunes on an iOS client
  2. Create an App Store fileset
  3. Associate the fileset to an iOS client
  4. Update Model
  5. On the client, tap 'Cancel' when prompted to sign into iTunes

13

CANT_LOAD_DATA_FILE_FROM_SERVER_ERROR

WARNING

Error while downloading from server

WARNING

 

Note: Only have seen 'Fileset Error'

14

STATUS_FILESET_ASSOCIATED

IGNORE

Associated

REMAINING

macOS

Windows

Android

iOS

  1. Create any type of fileset
  2. Associate the fileset to a client
  3. Update Model
  4. Open Client Info > Filesets Status for client before client gets new model

15

BOOSTER_SERVER_DISK_FULL_STATUS

ERROR

Booster/Server disk full

ERROR

   

16

STATUS_FILESET_INSTALLATION_CANCELLED

WARNING

Installation cancelled by the user

COMPLETED

Android

Easiest to see with Android

  1. Create an APK fileset
  2. Associate the APK with an Android client
  3. Update Model
  4. On the Android device, tap [Cancel] when prompted to install the APK

17

STATUS_FILESET_INSTALLER_OUTDATED

WARNING

Fileset install failed, a more recent version is installed

ERROR

   

18

STATUS_FILESET_UNINSTALLER_RUNNING

ACTIVITY

Uninstaller running now

REMAINING

   

19

STATUS_FILESET_UNINSTALL_FAILURE

WARNING

Uninstall failed

WARNING

   

21

ACTIVATING_STATUS

ACTIVITY

Activating

REMAINING

   

22

STATUS_FILESET_SCRIPT_FAILED

WARNING

Script execution failure

ERROR

   

23

STATUS_INVENTORY_ONLY_CLIENT

WARNING

Not installed: client is inventory only

COMPLETED

   

25

STATUS_IN_KIOSK_UNINSTALLED

OK

Excluded from Kiosk (Dependency)

Available in Kiosk

COMPLETED

macOS

Windows

 

-52

PLEASE_REBOOT_RESULT

ACTIVITY

Waiting for user to log out

REMAINING

macOS

Windows

 

-51

FAILED_TO_LOGOUT_RESULT

ACTIVITY

Waiting for user to log out

REMAINING

macOS

Windows

 

-50

WAITING_FOR_USER_TO_LOGIN_RESULT

ACTIVITY

Waiting for user to log in

REMAINING

macOS

Windows

 

99

FILESET_PRIORITY_ERROR

ACTIVITY

Waiting for higher priority filesets

REMAINING

 
  1. Create 2 filesets A and B
  2. In Fileset Properties set fileset A's Installation Priority to Highest, and fileset B's to Lowest
  3. Select fileset A an click the [Scripts] button in Filesets view
  4. Create a script under 'Activation Scripts' that will cause a wait
    1. e.g. for batch, add a PAUSE
  5. Associate filesets A and B with a client
  6. Update Model & perform a Verify for client

98

FILESET_REQUIREMENTS_ARCH_ERROR

INFO

Requirements not met: architecture

COMPLETED

 
  1. Create a fileset that allows setting Requirements
  2. In Fileset Properties > Requirements, check the box for 'Architecture' and (un)select options that would make fileset fail to install on client
  3. Associate fileset to a client
  4. Update Model & perform Verify for client

97

FILESET_REQUIREMENTS_VERSION_ERROR

INFO

Requirements not met: system version

COMPLETED

 
  1. Create a fileset that allows setting Requirements
  2. In Fileset Properties > Requirements, check the box for 'System Version' or 'Platform' and (un)select options that would make fileset fail to install on client
  3. Associate fileset to a client
  4. Update Model & perform Verify for client

96

FILESET_REQUIREMENTS_MEMORY_ERROR

INFO

Requirements not met: insufficient memory

COMPLETED

 
  1. Create a fileset that allows setting Requirements
  2. In Fileset Properties > Requirements, check the box for 'Min. Memory' and set the minimum memory (in MB) to greater than the total memory for a client
  3. Associate fileset to a client
  4. Update Model & perform Verify for client

95

FILESET_REQUIREMENTS_SCRIPT_ERROR

INFO

Requirements not met: script

COMPLETED

 
  1. Create a fileset that allows adding Scripts
  2. Click the Scripts button and Create a script under 'Requirement Scripts'
  3. Have the script exit with a failure (exit 1)
  4. Associate fileset to a client
  5. Update Model & perform Verify for client

666

FILESET_REMOTE_WIPE_EXECUTED

ACTIVITY

Remote wipe executed

REMAINING

   

-5

WAITING_FOR_BOOSTER_RESULT

ACTIVITY

Waiting for booster

REMAINING

   

-32

NETWORK_GENERIC_ERROR

WARNING

Network error

ERROR

   

-149

FAILED_CRC_CHECK_ERROR

ERROR

Failed CRC validation

ERROR

   

101

MAC_APP_STORE_FATAL_ERROR

WARNING

Mac App Store license fatal error

ERROR

   

102

MAC_APP_STORE_LICENSE_ASSOCIATED

IGNORE

Mac App Store license associated

REMAINING

   

103

MAC_APP_STORE_NOT_ENOUGH_LICENSES

WARNING

Not enough Mac App Store VPP license

WARNING

   

104

MAC_APP_STORE_VPP_USER_NOT_ASSOCIATED

WARNING

User needs to accept the invite to the organization with a valid iTunes account

REMAINING

   

105

MAC_APP_STORE_NO_LICENSE_NEEDED

WARNING

No VPP license associated to this fileset

REMAINING

   

106

MAC_APP_STORE_NO_VPP_USER

WARNING

No VPP user for this application's VPP token associated to the device

WARNING

   

107

MAC_APP_STORE_VPP_USER_RETIRED

WARNING

VPP user is retired

WARNING

   

108

MAC_APP_STORE_NO_VPP_TOKEN

WARNING

No VPP token associated to this fileset

WARNING

   

109

MAC_APP_STORE_INSTALLED

OK

Installed via Mac App Store

COMPLETED

   

110

MAC_APP_STORE_INSTALLING

ACTIVITY

Installing via Mac App Store (can take some time)

REMAINING

   

111

MAC_APP_STORE_ASSET_NO_DEVICE_ASSIGNABLE

WARNING

VPP license for asset can not be assigned to a device

WARNING

   

112

MAC_APP_STORE_NOT_VPP_APP

WARNING

Not a VPP application

Fileset Error

WARNING

 

Note: Only have seen 'Fileset Error'

130

DEPENDENCIES_DOWNLOAD_FAILED

WARNING

Download of dependency fileset failure

ERROR

 
  1. Create 2 Empty filesets, A & B
  2. Make B a dependency of A
  3. Set the Requirements on B such that it will fail
  4. Associate A with a client
  5. Update Model & perform Verify for client

131

DEPENDENCIES_ACTIVATION_FAILED

WARNING

Activation of dependency fileset failure

ERROR

   

132

DEPENDENCIES_PASSIVE_FAILED

WARNING

Failed to make dependencies passive

WARNING

 

Note: Only have seen 'Fileset Error'

133

DEPENDENCIES_DELETE_FAILED

WARNING

Failed to delete dependencies

WARNING

 

Note: Only have seen 'Fileset Error'

134

DEPENDENCIES_UPDATE_FAILED

WARNING

Update of dependency fileset failure

ERROR

   

135

DEPENDENCIES_LOGOUT_FAILED

ACTIVITY

Waiting for user to log out to install dependency

REMAINING

   

136

DEPENDENCIES_FAILED

WARNING

Dependency fileset failed

WARNING

   

210

FILESET_REQUIREMENTS_OK_SKIP_INSTALL

OK

Skipped

COMPLETED

   

220

FILESET_REQUIREMENTS_ERROR_STOP_TRYING

INFO

Requirements not met: will not retry

COMPLETED

   

1024

CHECK_REQUIREMENTS_OK

ACTIVITY

Requirements met

REMAINING

   

2048

STATUS_FILESET_INSTALLED_BY_PROFILES_COMMAND

OK

Installed

COMPLETED

   

2049

STATUS_FILESET_INSTALLED_BY_MDM_SERVER

OK

Handled via MDM

COMPLETED

   

2050

STATUS_FILESET_FAILED_TO_INSTALL_BY_PROFILES_COMMAND

ERROR

Profile Installation Failure

ERROR