Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
![]() |
![]() |
Home -> Community -> Mailing Lists -> Oracle-L -> Re: Unexpected behavior with V$FILESTAT
Is it possible that dbwriter hadn't yet written the blocks to disk when you
performed your query?
--Terry
I am trying to collect some file IO statistics to get some IO rates over time. I noticed something unexpected or maybe I am crazy.
create table testio( numrow number, some_text varchar2(80)) tablespace tools;
select * from v$filestat where file#=122 ; -- record the phywrts
insert into testio(numrow,some_text) values(1,'hello world'); insert into testio(numrow,some_text) values(2,'hello world'); insert into testio(numrow,some_text) values(3,'hello world'); insert into testio(numrow,some_text) values(4,'hello world'); insert into testio(numrow,some_text) values(5,'hello world');commit;
insert into testio(numrow,some_text) values(1,'hello world'); insert into testio(numrow,some_text) values(2,'hello world'); insert into testio(numrow,some_text) values(3,'hello world'); insert into testio(numrow,some_text) values(4,'hello world'); insert into testio(numrow,some_text) values(5,'hello world');commit;
insert into testio(numrow,some_text) values(1,'hello world'); insert into testio(numrow,some_text) values(2,'hello world'); insert into testio(numrow,some_text) values(3,'hello world'); insert into testio(numrow,some_text) values(4,'hello world'); insert into testio(numrow,some_text) values(5,'hello world');commit;
select * from v$filestat where file#=122 ; -- record the phywrts Okay
this number is larger than the one above.
-- so far so good.
Truncate table testio; -- leave the storage alone, don't unallocate the space.
select * from v$filestat where file#=122 ; -- record the phywrts
insert into testio(numrow,some_text) values(1,'hello world'); insert into testio(numrow,some_text) values(2,'hello world'); insert into testio(numrow,some_text) values(3,'hello world'); insert into testio(numrow,some_text) values(4,'hello world'); insert into testio(numrow,some_text) values(5,'hello world');commit;
select * from v$filestat where file#=122 ; -- record the phywrts the number is unchanged. I would have expected the number to bump up. I think it will if I insert enough rows.(it does)
Any ideas? It appears that phywrts only count if the segment extends past its high water mark?
I am running 9.2 on Solaris.
Jim
--
http://www.freelists.org/webpage/oracle-l
--
http://www.freelists.org/webpage/oracle-l
Received on Fri Aug 26 2005 - 16:49:43 CDT
![]() |
![]() |