Hi guys,
I am talking with a customer that is having some issues with storage locations and I would like to understand something about it. When you add space to a node, the documentation recommends to create a new storage location, so I suppose that if you don't assign the storage location for an object, that storage location is a pure added space for the database, right? Even if they are in different partitions?
Let's say that we have a new partition /dev/sda3, for example, mounted in /vertica/data/new_location/, and we do:
=> CREATE LOCATION '/vertica/data/new_location/' ALL NODES;
So:
=> SELECT node_name, location_path, location_usage, location_label FROM storage_locations;
node_name | location_path | location_usage | location_label
------------------+-------------------------------------------+----------------+----------------
v_vmart_node0001 | /vertica/data/VMart/v_vmart_node0001_data | DATA,TEMP |
v_vmart_node0001 | /vertica/data/new_location | DATA,TEMP |
How space is managed while I am loading new data? Could it happen that the first storage location is full and then continue to use the second one (in a different partition)?
What we are facing in this customer is that they added space in a new partition and create a storage location for it. After loading more data, we found that the first storage location is full and the new one is almost empty (94% free space), but we cannot do anything because Vertica is saying "insufficient space". Even if we try to purge we have that message and not being able to load or purge data (I suppose because of the temp files).
So, to understand about this... is a storage location a new added space if it is in a new partition of the system? Or that's only the case if we set objects to that specific storage location?
Sorry about so many questions, but I am getting confused about storage locations after this and we may be missing something from configuration in the case of the customer issue.
Thank you!
Regards,
David.