Can't set vertex attribute size

I am rendering models each is comprised of several meshes, so I have a buffer objs for vertex attrib data in each model, then I allocate mutable data storage for each attrib and load each mesh data one at a time in these buffer objects, then use glDrawElements to draw.
The problem I am having is I keep getting access violation crashes on glDrawElements.
After a lot of investigations and inspections, I found that the size of the vertex array elements is always 4, although they should be 3 for positions and normals and tangents and 2 for texture coordinates.
I am not sure if this is the cause of the crash, although it very well could be since the vertex array elements seem to be read larger than they actually are, but there is an error in the reported size.
I use glGetVertexAttribiv(attribIndex, GL_VERTEX_ATTRIB_ARRAY_SIZE, &param) to get the attribute size.
Does NVIDIA have any answer to this?
There is another thread about an error with glDrawElements under 64-bit VS 2015, which is what I am using as well, could that be the cause?