Zend Framework
LICENSE
This source file is subject to the new BSD license that is bundled with this package in the file LICENSE.txt. It is also available through the world-wide-web at this URL: http://framework.zend.com/license/new-bsd If you did not receive a copy of the license and are unable to obtain it through the world-wide-web, please send an email to license@zend.com so we can send you a copy immediately.
FULL_SCAN_VS_FETCH_BOUNDARY = '5'
"Full scan vs fetch" boundary.
If filter selectivity is less than this value, then full scan is performed (since term entries fetching has some additional overhead).
Details SM_TERMS_ONLY = '0'
Scan modes
Details SM_FULL_INFO = '1'
Details SM_MERGE_INFO = '2'
Detailsinteger $_delGen = ''Delete file generation number
-2 means autodetect latest delete generation -1 means 'there is no delete file' 0 means pre-2.1 format delete file X specifies used delete file
Detailsmixed $_deleted = 'null'List of deleted documents.
bitset if bitset extension is loaded or array otherwise.
Detailsboolean $_deletedDirty = 'false'$this->_deleted update flag
DetailsZend_Search_Lucene_Storage_Directory_Filesystem $_directory = ''File system adapter.
Detailsinteger $_docCount = ''Number of docs in a segment
Detailsarray|null $_docMap = 'null'Map of the document IDs Used to get new docID after removing deleted documents.
It's not very effective from memory usage point of view, but much more faster, then other methods
Detailsarray $_fields = ''Segment fields. Array of Zend_Search_Lucene_Index_FieldInfo objects for this segment
Detailsarray $_fieldsDicPositions = ''Field positions in a dictionary.
(Term dictionary contains filelds ordered by names)
DetailsZend_Search_Lucene_Storage_File $_frqFile = 'null'Frequencies File object for stream like terms reading
Detailsinteger $_frqFileOffset = ''Actual offset of the .frq file data
Detailsboolean $_hasSingleNormFile = ''Segment has single norms file
If true then one .nrm file is used for all fields Otherwise .fN files are used
Detailsinteger $_indexInterval = ''Segment index interval
Detailsboolean $_isCompound = ''Use compound segment file (*.cfs) to collect all other segment files (excluding .del files)
DetailsZend_Search_Lucene_Index_Term $_lastTerm = 'null'Last Term in a terms stream
DetailsZend_Search_Lucene_Index_TermInfo $_lastTermInfo = 'null'Last TermInfo in a terms stream
Detailsarray|null $_lastTermPositions = ''An array of all term positions in the documents.
Array structure: array( docId => array( pos1, pos2, ...), ...)
Is set to null if term positions loading has to be skipped
Detailsstring $_name = ''Segment name
Detailsarray $_norms = 'array'Normalization factors.
An array fieldName => normVector normVector is a binary string. Each byte corresponds to an indexed document in a segment and encodes normalization factor (float value, encoded by Zend_Search_Lucene_Search_Similarity::encodeNorm())
DetailsZend_Search_Lucene_Storage_File $_prxFile = 'null'Positions File object for stream like terms reading
Detailsinteger $_prxFileOffset = ''Actual offset of the .prx file in the compound file
Detailsarray $_segFileSizes = ''Associative array where the key is the file name and the value is file size (.csf).
Detailsarray $_segFiles = ''Associative array where the key is the file name and the value is data offset in a compound segment file (.csf).
Details $_sharedDocStoreOptions = ''
Detailsinteger $_skipInterval = ''Segment skip interval
Detailsinteger $_termCount = '0'Actual number of terms in term stream
Detailsarray $_termDictionary = ''Term Dictionary Index
Array of arrays (Zend_Search_Lucene_Index_Term objects are represented as arrays because of performance considerations) [0] -> $termValue [1] -> $termFieldNum
Corresponding Zend_Search_Lucene_Index_TermInfo object stored in the $_termDictionaryInfos
Detailsarray $_termDictionaryInfos = ''Term Dictionary Index TermInfos
Array of arrays (Zend_Search_Lucene_Index_TermInfo objects are represented as arrays because of performance considerations) [0] -> $docFreq [1] -> $freqPointer [2] -> $proxPointer [3] -> $skipOffset [4] -> $indexPointer
Detailsarray $_termInfoCache = 'array'TermInfo cache
Size is 1024. Numbers are used instead of class constants because of performance considerations
Detailsinteger $_termNum = '0'Overall number of terms in term stream
Detailsinteger $_termsScanMode = ''Terms scan mode
Values:
self::SM_TERMS_ONLY - terms are scanned, no additional info is retrieved self::SM_FULL_INFO - terms are scanned, frequency and position info is retrieved self::SM_MERGE_INFO - terms are scanned, frequency and position info is retrieved document numbers are compacted (shifted if segment has deleted documents)
DetailsZend_Search_Lucene_Storage_File $_tisFile = 'null'Term Dictionary File object for stream like terms reading
Detailsinteger $_tisFileOffset = ''Actual offset of the .tis file data
Detailsboolean $_usesSharedDocStore = ''True if segment uses shared doc store
Details__construct(
Zend_Search_Lucene_Storage_Directory $directory, string $name, integer $docCount, integer $delGen
=
0, array|null $docStoreOptions
=
null, boolean $hasSingleNormFile
=
false, boolean $isCompound
=
null
)
:
Zend_Search_Lucene_Index_SegmentInfo constructor
Details_cleanUpTermInfoCache(
)
:
Details_deletedCount(
)
:
integerReturns number of deleted documents.
Details_detectLatestDelGen(
)
:
integerDetect latest delete generation
Is actualy used from writeChanges() method or from the constructor if it's invoked from Index writer. In both cases index write lock is already obtained, so we shouldn't care about it
Details_getFieldPosition(
integer $fieldNum
)
:
integerGet field position in a fields dictionary
Details_load21DelFile(
)
:
mixedLoad 2.1+ format detetions file
Returns bitset or an array depending on bitset extension availability
Details_loadDelFile(
)
:
mixedLoad detetions file
Returns bitset or an array depending on bitset extension availability
Details_loadDictionaryIndex(
)
:
Load terms dictionary index
Details_loadNorm(
integer $fieldNum
)
:
Load normalizatin factors from an index file
Details_loadPre21DelFile(
)
:
mixedLoad pre-2.1 detetions file
Returns bitset or an array depending on bitset extension availability
DetailscloseTermsStream(
)
:
Close terms stream
Should be used for resources clean up if stream is not read up to the end
DetailscompoundFileLength(
string $extension
)
:
integerGet compound file length
Detailscount(
)
:
integerReturns the total number of documents in this segment (including deleted documents).
DetailscurrentTerm(
)
:
Zend_Search_Lucene_Index_Term|nullReturns term in current position
DetailscurrentTermPositions(
)
:
arrayReturns an array of all term positions in the documents.
Return array structure: array( docId => array( pos1, pos2, ...), ...)
Detailsdelete(
$id
)
:
Deletes a document from the index segment.
$id is an internal document id
DetailsgetDelGen(
)
:
integerReturns actual deletions file generation number.
DetailsgetField(
integer $fieldNum
)
:
Zend_Search_Lucene_Index_FieldInfoReturns field info for specified field
DetailsgetFieldInfos(
)
:
arrayReturns array of FieldInfo objects.
DetailsgetFieldNum(
string $fieldName
)
:
integerReturns field index or -1 if field is not found
DetailsgetFields(
boolean $indexed
=
false
)
:
arrayReturns array of fields.
if $indexed parameter is true, then returns only indexed fields.
DetailsgetName(
)
:
stringReturn segment name
DetailsgetTermInfo(
Zend_Search_Lucene_Index_Term $term
)
:
Zend_Search_Lucene_Index_TermInfoScans terms dictionary and returns term info
DetailshasDeletions(
)
:
booleanReturns true if any documents have been deleted from this index segment.
DetailshasSingleNormFile(
)
:
booleanReturns true if segment has single norms file.
DetailsisCompound(
)
:
booleanReturns true if segment is stored using compound segment file.
DetailsisDeleted(
$id
)
:
booleanChecks, that document is deleted
DetailsnextTerm(
)
:
Zend_Search_Lucene_Index_Term|nullScans terms dictionary and returns next term
Detailsnorm(
integer $id, string $fieldName
)
:
floatReturns normalization factor for specified documents
DetailsnormVector(
string $fieldName
)
:
stringReturns norm vector, encoded in a byte string
DetailsnumDocs(
)
:
integerReturns the total number of non-deleted documents in this segment.
DetailsopenCompoundFile(
string $extension, boolean $shareHandler
=
true
)
:
Zend_Search_Lucene_Storage_FileOpens index file stoted within compound index file
DetailsresetTermsStream(
)
:
integerReset terms stream
$startId - id for the fist document $compact - remove deleted documents
Returns start document id for the next segment
DetailsskipTo(
Zend_Search_Lucene_Index_Term $prefix
)
:
Skip terms stream up to the specified term preffix.
Prefix contains fully specified field info and portion of searched term
DetailstermDocs(
Zend_Search_Lucene_Index_Term $term, integer $shift
=
0, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
arrayReturns IDs of all the documents containing term.
DetailstermFreqs(
Zend_Search_Lucene_Index_Term $term, integer $shift
=
0, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
Zend_Search_Lucene_Index_TermInfoReturns term freqs array.
Result array structure: array(docId => freq, ...)
DetailstermPositions(
Zend_Search_Lucene_Index_Term $term, integer $shift
=
0, Zend_Search_Lucene_Index_DocsFilter|null $docsFilter
=
null
)
:
Zend_Search_Lucene_Index_TermInfoReturns term positions array.
Result array structure: array(docId => array(pos1, pos2, ...), ...)
DetailswriteChanges(
)
:
Write changes if it's necessary.
This method must be invoked only from the Writer _updateSegments() method, so index Write lock has to be already obtained.
Details