Ramon:
No, there is nothing in sysadmin about extending chunks of expanding dbspaces using the storage pool either. It is all stored in sysdbspaces and syschunks. Witness:
dbaccess sysmaster -
> select * from sysdbspaces where dbsnum = 4;
dbsnum 4
name datadbs_1
owner informix
pagesize 2048
fchunk 4
nchunks 1
create_size 10.00000000000
extend_size 10000.00000000
max_size 0
is_mirrored 0
is_blobspace 0
is_sbspace 0
is_temp 0
is_encrypted 0
flags 1
1 row(s) retrieved.
> database sysadmin;
> execute function task( 'modify space sp_sizes', 'datadbs_1', 1000, 50000, 1000000000 );
(expression) Succeeded: Create size changed to 1000, Extend size
changed to 50000, Max size changed to 1000000000, for DBspace dat
adbs_1.
1 row(s) retrieved.
> select * from sysmaster:sysdbspaces where dbsnum = 4;
dbsnum 4
name datadbs_1
owner informix
pagesize 2048
fchunk 4
nchunks 1
create_size 1000.000000000
extend_size 50000.00000000
max_size 976562
is_mirrored 0
is_blobspace 0
is_sbspace 0
is_temp 0
is_encrypted 0
flags 1
1 row(s) retrieved.
------------------------------
Art S. Kagel, President and Principal Consultant
ASK Database Management Corp.
www.askdbmgt.com------------------------------
Original Message:
Sent: Tue April 20, 2021 02:27 PM
From: Ramon Rey
Subject: How to find which dbspaces are set to auto extend?
Thanks Art and Paul,
What I actually need to find is:
- Has a dbspace had its "sp_sizes modified", as per "EXECUTE FUNCTION task('modify dbspace sp_sizes', '3', '60000', '10000');"?
- If so, what were the create, extend and max extend sizes and/or percentages set to?
I figure since the "EXECUTE FUNCTION task('modify dbspace sp_sizes', '3', '60000', '10000');" call is performed in the sysadmin database, there must be a table storing those sizes/percentages, or at least some offset of some field.
Thanks again! ^_^
R
------------------------------
Ramon Rey
Original Message:
Sent: Tue April 20, 2021 11:46 AM
From: Ramon Rey
Subject: How to find which dbspaces are set to auto extend?
Howdy y'all!
I understand what needs to be done to do make a dbspace auto extendable:
- Mark the chunk(s) extendable:
DATABASE sysadmin;EXECUTE FUNCTION task("modify chunk extendable", "12");
- Set the SP_THRESHOLD onconfig setting.
- Change how often the mon_low_storage task runs:
DATABASE sysadmin;UPDATE ph_task set tk_frequency = INTERVAL (10) MINUTE TO MINUTE WHERE tk_name = "mon_low_storage";
- Setup the size or percentage of the extend:
DATABASE sysadmin;EXECUTE FUNCTION task("modify dbspace sp_sizes", "3", "60000", "10000");
Being the last step key to set the auto extend (at least how I understand it): how else would the mon_low_storage task know how much to add to a dbspace?
Ultimately, I need to know how to check if the last step has been done. Hopefully there is a table in the sysadmin (?) database that I can query to find if the last step has been done and the "dbspace sp_sizes" size or percentage for the auto extend.
Many thanks in advance!
Ramón
------------------------------
Ramon Rey
------------------------------
#Informix