Change the Maximum File Size of a MIF

Does your company rely on inventory data from Microsoft Endpoint Manager Configuration Manager (MEMCM)? There may be a problem with the hardware inventory and, unfortunately, many MEMCM admins aren’t aware of it. Eventually, the problems associated with the maximum file size of a MIF come to light. This usually occurs when a custom hardware inventory class is added and you are left wondering why you don’t see this new inventory on some computers. It also pops-up when you are reviewing hardware inventory details and see outdated results.

Not too long ago, this happened to me. While adding yet another custom hardware inventory class to MEMCM, I wondered why my inventory was not being updated in the MEMCM console. I’m going to keep this blog post relatively short, so I’ll skip to the part where I finally located an error within the SMS Inventory Data Loader. At once, I knew what the problem was and how to fix it. I needed to increase the MIF’s file size, so this blog post will show you how to change the maximum file size of a MIF.

By the way, the maximum file size is only 50 MB, but more on that later. In case you also need tips about troubleshooting inventory problems, please check out my other blog post, Troubleshoot ConfigMgr Hardware Inventory Issues.

MIF Error

Message ID 2719:

Inventory Data Loader failed to process the file D:\Program Files\Microsoft Configuration Manager\inboxes\auth\dataldr.box\Process\HDD6EP0U.MIF because it is larger than the defined maximum allowable size of 5000000.

Solution: Increase the maximum allowable size, which is defined in the registry key HKLM\Software\Microsoft\SMS\Components\SMS_INVENTORY_DATA_LOADER\Max MIF Size (the default is 5 MB), and wait for Inventory Data Loader to retry the operation.

As I explained earlier, this MIF error is so common that most companies and MEMCM admins don’t even know they have a problem until a custom inventory class is added. Then they wonder why they don’t see the new inventory class. When I see this error, I know exactly what happened. The hardware inventory MIF is now bigger than 5 MB, so the MIF size needs to be increased to the maximum 50 MB.

The problem is so wide-spread that Enhansoft’s Enhansoft Reporting and Warranty Information Reporting software checks the file size setting prior to the installation of either solution. We do this because we want our clients to have a great experience. We never want to leave them guessing why their hardware inventory is not showing up. It’s little things like this that we do to make sure that you get the most out of MEMCM.

What is the 2719 Loop?

The “2719 Loop” is a term that I use to describe what happens when a computer triggers the 2719 error message.
Here’s what happens:

  • When a computer submits a MIF file that is too large, it gets sent to the <install directory>\inboxes\auth\dataldr.box\BADMIFS\ExceedSizeLimit folder.
  • Then a hardware inventory re-sync message is sent to the computer.
  • The computer sees that the re-sync message is set for the computer and the computer performs a full hardware inventory (HW inv).
  • This full HW inv, of course, is bigger than the registry key value (in other words 5 MB). But, the MEMCM client doesn’t know that, so it sends the MIF file to the MP.
  • Next, the MP then sends the MIF file to the site server.
  • The site server then sees that the MIF file is too big and rejects it. This triggers a re-sync message creating an endless loop.

The endless loop continues to use the client, network and site server resources endlessly and needlessly. Until, of course, the file size is increased.

Why Increase the MIF File to Only 50 MB?

There is only one major reason for this – MEMCM won’t process MIF files over 50 MB! So, that’s the absolute maximum size of a MIF file. Even if you set the value to be greater than 50 MB, the file will get rejected as being too large by your site server.

Increasing the MIF file size to 50 MB, however, stops the endless loop for what I estimate is 99% of all computers. Only Citrix servers might be larger than 50 MB, but only if the SMS_SoftwareShortCut AI class is enabled. If you use AI at all, you should see my post on How to Setup, Configure and Use SCCM’s Asset Intelligence for more details on how to avoid this issue and get the most out of MEMCM AI.

Change the Maximum File Size of a MIF

Maximum File Size of a MIF - Registry Editor

Changing the file size of a MIF is quick and easy to do. You simply edit one registry key and restart the smsexec service.

  1. On the MEMCM site server, open regedit.exe.
  2. Drill down to HKLM\Software\Microsoft\SMS\Components\SMS_INVENTORY_DATA_LOADER.
  3. Find Max MIF Size and double-click on it.
  4. Change the HEX value to 3200000 which is 50 MB. By the way, the actual default value is 4c4b40 (hex) or 5000 bytes which is just under 5 MB.
  5. Close regedit.exe.
  6. Restart the smsexec service.

Maximum File Size of a MIF - Reset Counts

  1. Reset the counts for all errors and warnings for SMS_INVENTORY_DATA_LOADER.
  2. Now you’re done!

Notes

You will want to do this registry edit on your CAS and all primary site servers.

Do you have MIF files that are larger that 50 MB? Unfortunately, there is nothing that you can do except to reduce the amount of inventory you are collecting. BUT, please let me know if this is your situation because I’m pushing to have the 50 MB limit increased and I need examples as to why this is important.

Changing the maximum file size of a MIF is a simple and quick fix to stopping the endless “2719 Loop” of hardware inventory. Please feel free to contact me at @GarthMJ if you have any additional questions.

See how Right Click Tools are changing the way systems are managed.

Immediately boost productivity with our limited, free to use, Community Edition.

Get started with Right Click Tools today:

Share this:

Support

  • This field is for validation purposes and should be left unchanged.

Contact

  • This field is for validation purposes and should be left unchanged.

Contact

  • This field is for validation purposes and should be left unchanged.
en_USEnglish