To increase my ETL performance, I have enabled "AutoAdjustBufferSize" property on my data flow tasks. However, it is not allocating enough buffer to the memory I need.
Check out what SSIS tells me...
Information: The buffer manager failed a memory allocation call for 1954545664 bytes, but was unable to swap out any buffers to relieve memory pressure. 2 buffers were considered and 2 were locked. Either not enough memory is available to the pipeline because not enough are installed, other processes were using it, or too many buffers are locked.
Information: Buffer manager allocated 1864 megabyte(s) in 1 physical buffer(s).
Error: The system reports 36 percent memory load. There are 34156761088 bytes of physical memory with 21535158272 bytes free. There are 4294836224 bytes of virtual memory with 1996070912 bytes free. The paging file has 39257034752 bytes with 24542248960 bytes free.
Several questions on this:
- Why are there only 2 buffers allows here? (max buffer rows is set to 1048576)
- Why does it say BOTH that it allocated the same bytes that it says it couldn't allocate?
To note:
- It works when I manually set the buffer row size to the default (104857360)
- All development and source data files live on a network server. I'm using visual studio in my local computer to access the development/source files