// . returns false if blocked, true otherwise // . see if other pages we've indexed have this same image url bool Images::launchRequests ( ) { // loop over all images for ( long i = m_i ; i < m_numImages ; i++ ) { // advance m_i++; // assume no error m_errors[i] = 0; // make the keys. each term is a gbimage:<imageUrl> term // so we are searching for the image url to see how often // it is repeated on other pages. key144_t startKey ; key144_t endKey ; g_posdb.makeStartKey(&startKey,m_termIds[i]); g_posdb.makeEndKey (&endKey ,m_termIds[i]); // get our residing groupid //unsigned long gid = g_indexdb.getNoSplitGroupId(&startKey); // no split is true for this one, so we do not split by docid //uint32_t gid = getGroupId(RDB_INDEXDB,&startKey,false); unsigned long shardNum; shardNum = getShardNum(RDB_POSDB,&startKey); // get the termlist if ( ! m_msg0.getList ( -1 , // hostid -1 , // ip -1 , // port 0 , // maxAge false , // addToCache? RDB_POSDB, m_collnum , &m_list , // RdbList ptr (char *)&startKey , (char *)&endKey , 1024 , // minRecSize this , gotTermListWrapper , MAX_NICENESS , false , // err correction? true , // inc tree? true , // domergeobsolete -1 , // firstHostId 0 , // start filenum -1 , // numFiles 30 , // timeout -1 , // syncpoint -1 , // preferlocalreads NULL , // msg5 NULL , // msg5b false , // isRealMerge? true , // allow pg cache false , // focelocalindexdb false , // doIndexdbSplit? shardNum ))// force paritysplit return false; // process the msg36 response gotTermList (); } // i guess we didn't block return downloadImages(); }
// . returns false if blocked, true otherwise // . see if other pages we've indexed have this same image url bool Images::launchRequests ( ) { // loop over all images for ( int32_t i = m_i ; i < m_numImages ; i++ ) { // advance m_i++; // assume no error m_errors[i] = 0; // make the keys. each term is a gbimage:<imageUrl> term // so we are searching for the image url to see how often // it is repeated on other pages. key144_t startKey ; key144_t endKey ; g_posdb.makeStartKey(&startKey,m_termIds[i]); g_posdb.makeEndKey (&endKey ,m_termIds[i]); uint32_t shardNum; // assume to be for posdb here shardNum = g_hostdb.getShardNumByTermId ( &startKey ); // debug msg if ( g_conf.m_logDebugImage ) log("image: image checking shardnum %" PRId32" (termid0=%" PRIu64")" " for image url #%" PRId32, shardNum ,m_termIds[i],i); // get the termlist if ( ! m_msg0.getList ( -1 , // hostid -1 , // ip -1 , // port 0 , // maxAge false , // addToCache? RDB_POSDB, m_collnum , &m_list , // RdbList ptr (char *)&startKey , (char *)&endKey , 1024 , // minRecSize this , gotTermListWrapper , MAX_NICENESS , false , // err correction? true , // inc tree? true , // domergeobsolete -1 , // firstHostId 0 , // start filenum -1 , // numFiles 30000 , // timeout -1 , // syncpoint -1 , // preferlocalreads NULL , // msg5 false , // isRealMerge? true , // allow pg cache false , // focelocalindexdb false , // doIndexdbSplit? shardNum ))// force paritysplit return false; // process the msg36 response gotTermList (); } // i guess we didn't block return downloadImages(); }