0
0
A modern text indexing library for go. (this is a mirror of the github repository) http://www.blevesearch.com/
Go to file
Marty Schoch cea119449e fix data race in doc id search
the implementation of the doc id search requires that the list
of ids be sorted.  however, when doing a multisearch across
many indexes at once, the list of doc ids in the query is shared.
deeper in the implementation, the search of each shard attempts
to sort this list, resulting in a data race.

this is one example of a potentially larger problem, however
it has been decided to fix this data race, even though larger
issues of data owernship may remain unresolved.

this fix makes a copy of the list of doc ids, just prior to
sorting the list.  subsequently, all use of the list is on the
copy that was made, not the original.

fixes #518
2017-08-07 15:11:35 -04:00
analysis Fix test 2017-06-22 18:56:28 -04:00
cmd/bleve added hyphen in query sort by option 2017-05-18 11:27:51 -07:00
config remove forestdb from bleve 2017-03-30 12:27:23 -04:00
docs nicer formatting of license header 2016-10-02 10:13:14 -04:00
document add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
geo fix geo point distance search 2017-04-27 17:28:07 -04:00
http fix misspellings 2016-10-02 12:11:15 -04:00
index fix data race in doc id search 2017-08-07 15:11:35 -04:00
mapping fix nil ptr panic on newly introduced text marshaler support 2017-06-05 10:08:10 -04:00
numeric add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
registry optimize FacetsBuilder with cached fields & avoid some allocs 2016-10-25 15:34:48 -07:00
search fix issue with numeric range queries in query string 2017-06-06 16:03:05 -04:00
test introduce new query TermRange 2017-03-31 22:04:00 -04:00
vendor MB-22410 - Configurable forced Store Abort API 2017-03-07 19:33:51 +05:30
.gitignore initial refactor of query into separate package 2016-09-29 14:54:16 -04:00
.travis.yml remove firestorm index scheme 2016-06-26 07:51:41 -04:00
config_app.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
config_disk.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
config.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
CONTRIBUTING.md adding CONTRIBUTING.md to repo 2016-06-26 09:48:43 -04:00
doc.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
error.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
examples_test.go additional golint cleanups 2016-10-02 12:00:01 -04:00
index_alias_impl_test.go simplified MultiSearch requires that indexes honor context deadlines 2016-11-03 16:44:20 -07:00
index_alias_impl.go fix race condition in incorrectly shared state in MultiSearch 2017-04-06 17:49:33 -04:00
index_alias.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_impl.go Add new IndexAdvanced function 2017-04-12 00:31:51 +02:00
index_meta_test.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_meta.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_stats.go nicer formatting of license header 2016-10-02 10:13:14 -04:00
index_test.go Add new IndexAdvanced function 2017-04-12 00:31:51 +02:00
index.go add support for BleveType() alternative for type detection 2017-05-19 09:22:12 -04:00
LICENSE adding license file 2014-04-17 17:03:15 -04:00
mapping.go add experimental support for indexing/query geo points 2017-03-24 17:22:21 -07:00
query.go introduce new query TermRange 2017-03-31 22:04:00 -04:00
README.md Apache2 license badge 2017-02-13 16:09:54 -08:00
search_test.go clean up of unit test. 2017-02-02 23:33:26 +05:30
search.go Adding a new bucket setter method for dateTimeRange 2017-06-12 15:53:27 +05:30

bleve bleve

Build Status Coverage Status GoDoc Join the chat at https://gitter.im/blevesearch/bleve codebeat Go Report Card Sourcegraph License

modern text indexing in go - blevesearch.com

Try out bleve live by searching the bleve website.

Features

  • Index any go data structure (including JSON)
  • Intelligent defaults backed up by powerful configuration
  • Supported field types:
    • Text, Numeric, Date
  • Supported query types:
    • Term, Phrase, Match, Match Phrase, Prefix
    • Conjunction, Disjunction, Boolean
    • Numeric Range, Date Range
    • Simple query syntax for human entry
  • tf-idf Scoring
  • Search result match highlighting
  • Supports Aggregating Facets:
    • Terms Facet
    • Numeric Range Facet
    • Date Range Facet

Discussion

Discuss usage and development of bleve in the google group.

Indexing

message := struct{
	Id   string
	From string
	Body string
}{
	Id:   "example",
	From: "marty.schoch@gmail.com",
	Body: "bleve indexing is easy",
}

mapping := bleve.NewIndexMapping()
index, err := bleve.New("example.bleve", mapping)
if err != nil {
	panic(err)
}
index.Index(message.Id, message)

Querying

index, _ := bleve.Open("example.bleve")
query := bleve.NewQueryStringQuery("bleve")
searchRequest := bleve.NewSearchRequest(query)
searchResult, _ := index.Search(searchRequest)

License

Apache License Version 2.0