> -----Original Message-----
> From: Tobias Oberstein [mailto:[EMAIL PROTECTED]
> Sent: Samstag, 22. Februar 2003 15:04
> To: [EMAIL PROTECTED]
> Subject: Is the Log writer lazy by default?
> 
> 
> Yesterday, I did a couple of performance tests using Java/JDBC and
> C++/OTL/ODBC to test INSERTs and DB PROC calls against a SAB DB 7.4
> instance (OLTP) on Windows 2000.
> 
> I found that I can INSERT into a narrow table at more than
> 600 records/sec - even when committing after _every single_ INSERT
> (Java/JDBC, unprepared SQL, autocommit off).
> 
> I wonder, this cannot be the case if log entries were written
> fully synchronous. If the Log writer UKT would flush it's log
> queue on every COMMIT, the performance could be at max. :
> 
> 7.200 RPM / 60 = 120 records / sec
> 
> My harddisk does 7.200 rpms. Best case if the disk head does not
> move at all, but log pages are written out just as the location
> on disk passes the head. This is the case excatly 120 times/sec.
> 
> That is: Is the Log writer laszy by default? E.g. does it wait
> until log pages are full to flush them to disk? Or is this a
> Win32 specifica where Windows plainly ignores requests for
> syncing file writes? How does SAP DB force a sync on Win32?
> 
> I know other RDBMS where there is stuff to activate like
> "delayed commit" and "write combining" which trades in durability
> (possibly integrity) for performance. 
> 
> I've read through the manuals and sources and found the following
> kernel options:
> 
> 
> #define         PAN_DELAY_LW                  "_DELAY_LOGWRITER"
> #define         PAN_DELAY_COMMIT              "_DELAY_COMMIT"
> 
> 
> but the functions seems to be unused (never called). Any 
> hints from the
> insiders?

Hi,

these parameters are not used in 7.4 anymore. Instead an implicit
group-commit is forced by the new implementation in 7.4:

Usertasks are now enabled to reserve space in the Log-Queue in 
parallel. The page is written by the LogWriter if all these pending
reserve-operations are completed. If you have a high parallelity
of small transactions then more than on transaction will be write
their commit-entry by one page-flush on the Log-Volume.
Also not only one page may be flushed, but a block of pages if the
throughput is high enough. This enables us to write more than one
page per rotation.

regards, Martin
_______________________________________________
sapdb.general mailing list
[EMAIL PROTECTED]
http://listserv.sap.com/mailman/listinfo/sapdb.general

Reply via email to