Hello ferret users, I have a problem with ferret dropping stored fields in the index. Not all fields I want to store get stored, so they can be searched, but can''t be retrieved in a search. Index creation: INDEX = Index::Index.new(:path => ''/home/gregor/wisa/index'', :analyzer => Analysis::WhiteSpaceAnalyzer.new) SR = Index::IndexSearcher(:path => ''/home/gregor/wisa/index'', :analyzer => Analysis::WhiteSpaceAnalyzer.new) Storing: # initial creation of a lucene index def create_index # our central INDEX index = FerretConfig::INDEX # get all Companies, iterate over and index them companies = Company.find(:all) for company in companies doc = Document.new doc << Field.new("id", company.id, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("country", company.company_group.address.country.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("name", company.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("zip", company.address.zip, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("city", company.address.city, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("street", company.address.street, Field::Store::YES, Field::Index::TOKENIZED) doc << Field.new("sectorid", company.sector_id, Field::Store::NO, Field::Index::UNTOKENIZED) doc << Field.new("parentsectorid", (company.sector.parent_id || ""), Field::Store::NO, Field::Index::UNTOKENIZED) doc << Field.new("sector", company.sector.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("parentsector", company.sector.breadcrumb.first.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("districtid", company.district_id, Field::Store::NO, Field::Index::UNTOKENIZED) doc << Field.new("district", company.district.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("sales", sprintf(''%010.4f'', company.sales), Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("employees", sprintf(''%010d'', company.employees), Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("codesector", company.code_sector.code, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("codesectorparent", company.code_sector.parent, Field::Store::NO, Field::Index::UNTOKENIZED) doc << Field.new("codesectorname", company.code_sector.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("cooperation", company.cooperation.to_i.to_s, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("lastname", company.contact.lastname, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("firstname", company.contact.firstname, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("position", company.contact.position, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("title", company.contact.title, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("salutation", company.contact.salutation, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("mail", company.contact.mail, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("fax", company.fax, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("phone", company.phone, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("url", company.url, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("comments", company.comments, Field::Store::YES, Field::Index::TOKENIZED) doc << Field.new("products", company.products, Field::Store::YES, Field::Index::TOKENIZED) doc << Field.new("state", company.state.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("investorname", company.company_group.name, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("investorcity", company.company_group.address.city, Field::Store::YES, Field::Index::UNTOKENIZED) doc << Field.new("investorstreet", company.company_group.address.street, Field::Store::YES, Field::Index::TOKENIZED) doc << Field.new("investorzip", company.company_group.address.zip, Field::Store::YES, Field::Index::UNTOKENIZED) index << doc logger.info "URL: " + doc["url"] # gets url, so doc is ok end # don''t close the index, but be sure to write it to the fs index.optimize() logger.info "URL 1: " + index[0]["url"] # passed, prints out correctly logger.info "URL 2: " + index[1]["url"] # passed, prints out correctly redirect_to(:action => ''new_index'') end Searching: if (@conditions != conditions) @records = Array.new sr = FerretConfig::SR sr.reader = Index::IndexReader.open(Store::FSDirectory.get_directory("/home/gregor/wisa/index")) qp = Ferret::QueryParser.new("id", { :analyzer => Ferret::Analysis::WhiteSpaceAnalyzer.new(), :wild_lower => false}) @records = sr.search(qp.parse(conditions)) end Search results are correct, but many fields are missing and can''t be accessed. The only fields in the results are city, name, zip, country, mail, firstname, lastname, id, phone, fax, street, sector, parentsector All others are missing.... Hope someone can help me soon, this is getting me crazy.. :-/ Best regards Gregor -- Posted via http://www.ruby-forum.com/.