Reader's Clinic - Fixing %Windows% Using Depend.Update
QTIPS - Updating Indexes
How Indexes Are Updated
REVMEDIA Revisted
RTP Series - RTP27
QTIPS - Printing Large Variables from the Debugger
VERBatim - V87
RTP Series - RTP38
VERBatim - V124
Rebuilding Indexes
QTIPS - Make.Index 2.11+
Index Flush
Caching in on the Frames Array - Mike Pope
QTIPS - DOS File Names
DOS Interfacing (Part II)
VERBatim - V116
@ATTACK - @Pri.File
@ATTACK - @Rollout.File
File Variables
How Indexes Are Updated
Index Record Layouts
QTIPS - File Variable of File In SELECT Statement
QTIPS - Amending non-Attached Files
LINEAR HASH FILE STRUCTURES - Part 1
Index Flush
QTIPS - File Handle Structure
SecureUser
VERBatim - V25
@ATTACK - @Files.System
Advanced Revelation Initialisation Sequence (Overview) by Mike Pope
REVMEDIA Revisted
!File Records
QTIPS - Updating Indexes
Indexing on Xlates
Rebuilding Indexes
How Indexes Are Updated
Index Record Layouts
Index Flush
REVMEDIA Revisited
RTP Series - RTP9
RTP Series - RTP50
VERBatim - V25
@ATTACK - @Files
Utility Diskette # 3 - Part I
VERBatim - V2
Viewer
@ATTACK - @Browse.Mode
@ATTACK - @File.Error.Mode
@ATTACK - @Macro.Mode
QTIPS - Using INIT.VIEW with Printers
@ATTACK - @Scroll.Mode
@ATTACK - @View.Mode
QUERY.SUB
What's New (and un(der)documented!) In 2.12
A RevTI Techie Replies - Mike Pope - Revelation Technologies (UK) Ltd
@ATTACK - @Modal
QTIPS - Modifying EasyWriter To Display Field Descriptions
RTP Series - RTP26
REVMEDIA Revisted
Playing with Scan Codes
QTIPS - Compiling Protection Code
QTIPS - Invalid Code and Command
QTIPS - Code/Command Help
Compiling 64K on a Shoestring by Blaise Wrenn (LexStat Systems Ltd)
Version 3 Technical Highlights - Customising NewApplication Creation
VERBatim - V86
@ATTACK - @Help.Level
@ATTACK - @Window.Level
QTIPS - Command Line Options
QTIPS - Invalid Code and Command
QTIPS - Code/Command Help
Utility Diskette # 4
Reader's Clinic - Page Marks in Windows

RevMedia FKB

DocumentV3I2A1
TitleIndex Flush
KeywordsINDEX.FLUSH
FILE.DISTRIBUTOR
INDEX
!INDEXING
FLUSH
TextThe ability to update INDEXES FROM within a program is provided by a system
subroutine called INDEX FLUSH This routine takes two parameters the file
information and the index information USING this routine it is possible to
update

All INDEXES Pass "" ""
All INDEXES for a file Pass File_Info ""
An index for a file Pass File_Info Index_Info

There have been REPORTS that this routine does not work as documented but
this appears to stem FROM a misunderstanding of how the routine works
Regardless of how the routine is called the same system routine
(FILE DISTRIBUTOR) is called to clear !INDEXING This routine does not check
to see which index it has been asked to distribute to the ! files it just
moves all TRANSACTION records to the appropriate ! files clearing down
!INDEXING as it does so Thus regardless of which mode is used the
!INDEXING file will always be clear (assuming all relevant files are
attached) AFTER an INDEX FLUSH call If a request was made to update a
specific file all other ! files would have transactions left pending in
records 0 1 2 etc If a request was made to update a specific index all
other ! files would have transactions left pending in records 0 1 2 etc
and the main ! file would have other index transactions pending in records
0 1 2 etc

Note that because of this if there are a large amount of index transactions
pending there can be a considerable delay when INDEX FLUSH is called even
if none of the pending transactions are for the nominated file/index

Contrary to the documentation it is possible to just pass the name of a file
to INDEX FLUSH (rather than the complete FILE*ACCOUNT*MEDIA_NAME) and it
will then resolve the rest of the information itself This removes the need
for additional code at the application level It is however important to
ensure that the file you wish to flush WITH this command is the currently
attached one


(Volume 3 Issue 2 Page 4)
[revmedia/copyrigh.htm]

Page last modified: 08/02/03