예제 #1
0
        // Called by one node once it has reopened, to notify all
        // other nodes.  this is just a mock (since it goes and
        // directly updates all other nodes, in RAM)... in a real
        // env this would hit the wire, sending version &
        // collection stats to all other nodes:
        internal virtual void BroadcastNodeReopen(int nodeID, long version, IndexSearcher newSearcher)
        {
            if (Verbose)
            {
                Console.WriteLine("REOPEN: nodeID=" + nodeID + " version=" + version + " maxDoc=" + newSearcher.IndexReader.MaxDoc);
            }

            // Broadcast new collection stats for this node to all
            // other nodes:
            foreach (string field in fieldsToShare)
            {
                CollectionStatistics stats = newSearcher.CollectionStatistics(field);
                foreach (NodeState node in m_nodes)
                {
                    // Don't put my own collection stats into the cache;
                    // we pull locally:
                    if (node.MyNodeID != nodeID)
                    {
                        node.collectionStatsCache[new FieldAndShardVersion(nodeID, version, field)] = stats;
                    }
                }
            }
            foreach (NodeState node in m_nodes)
            {
                node.UpdateNodeVersion(nodeID, version);
            }
        }
예제 #2
0
 public override Explanation IdfExplain(CollectionStatistics collectionStats, TermStatistics[] stats)
 {
     return(new Explanation(1.0f, "Inexplicable"));
 }
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     throw new InvalidOperationException();
 }
예제 #4
0
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     return(Sim.ComputeWeight(queryBoost, collectionStats, termStats));
 }
예제 #5
0
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     throw new NotSupportedException(UNSUPPORTED_MSG);
 }
예제 #6
0
 public override Explanation IdfExplain(CollectionStatistics collectionStats, TermStatistics[] termStats)
 {
     return(new Explanation(10f, "just a test"));
 }
예제 #7
0
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     return(new SimWeightAnonymousInnerClassHelper(this));
 }
 public override Explanation IdfExplain(CollectionStatistics collectionStats, TermStatistics[] termStats)
 {
     return new Explanation(10f, "just a test");
 }
예제 #9
0
 public override Explanation IdfExplain(CollectionStatistics collectionStats, TermStatistics[] stats)
 {
     return new Explanation(1.0f, "Inexplicable");
 }
예제 #10
0
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     return Sim.ComputeWeight(queryBoost, collectionStats, termStats);
 }
예제 #11
0
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     return new SimWeightAnonymousInnerClassHelper(this);
 }
예제 #12
0
 public override SimWeight ComputeWeight(float queryBoost, CollectionStatistics collectionStats, params TermStatistics[] termStats)
 {
     throw UnsupportedOperationException.Create(UNSUPPORTED_MSG);
 }