-
Notifications
You must be signed in to change notification settings - Fork 49
Closed
Labels
bugSomething isn't workingSomething isn't working
Description
Description
set -x MEILI_HOST_URL '***';
set -x MEILI_API_KEY '***';
set -x MEILI_INDEX_UID 'movies';
set -x MEILI_DATASET_PATH './huge_movies.json'Dataset: it's a movie dataset with 477300 movies. The total size is 317M. Here is the kind of documents inside the dataset
{
"title": "Neither bird nor beast",
"director": "",
"producer": "",
"tagline": "Based on a Mongolian tale.",
"genres": [
"Animation"
],
"id": 444542,
"overview": "Based on a mongolian tale.",
"cast": "",
"production_companies": [],
"vote_count": 0,
"vote_average": 0,
"poster_path": "https://image.tmdb.org/t/p/w500/cKAubGWWR3feRw2VhtsknQNh9y5.jpg",
"popularity": 0.6,
"release_date": 445651200
}
I've sent the dataset by email @brunoocasali
Using this script:
require 'meilisearch'
API_KEY = ENV['MEILI_API_KEY']
HOST_URL = ENV['MEILI_HOST_URL']
INDEX_UID = ENV['MEILI_INDEX_UID']
DATASET_PATH =ENV['MEILI_DATASET_PATH']
client = MeiliSearch::Client.new(HOST_URL, API_KEY, timeout: 20)
index = client.index(INDEX_UID)
file = File.read(DATASET_PATH)
documents = JSON.parse(file)
documents.each_slice(500000) do |slice|
task_status = index.add_documents(slice)
puts "task uid: #{task_status['uid']}"
end
puts 'done!'I get a broken pipe error
Traceback (most recent call last):
28: from app.rb:17:in `<main>'
27: from app.rb:17:in `each_slice'
26: from app.rb:17:in `each'
25: from app.rb:18:in `block in <main>'
24: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/meilisearch-0.18.2/lib/meilisearch/index.rb:71:in `add_documents'
23: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/meilisearch-0.18.2/lib/meilisearch/http_request.rb:38:in `http_post'
22: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/meilisearch-0.18.2/lib/meilisearch/http_request.rb:105:in `send_request'
21: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/meilisearch-0.18.2/lib/meilisearch/http_request.rb:39:in `block in http_post'
20: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/httparty-0.20.0/lib/httparty.rb:543:in `post'
19: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/httparty-0.20.0/lib/httparty.rb:613:in `perform_request'
18: from /Users/curquiza/.rvm/gems/ruby-2.6.6/gems/httparty-0.20.0/lib/httparty/request.rb:152:in `perform'
17: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:1470:in `request'
16: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:920:in `start'
15: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:1472:in `block in request'
14: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:1479:in `request'
13: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:1506:in `transport_request'
12: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:1506:in `catch'
11: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http.rb:1507:in `block in transport_request'
10: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http/generic_request.rb:123:in `exec'
9: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/http/generic_request.rb:189:in `send_request_with_body'
8: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:247:in `write'
7: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:265:in `writing'
6: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:248:in `block in write'
5: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:275:in `write0'
4: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:275:in `each_with_index'
3: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:275:in `each'
2: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/net/protocol.rb:277:in `block in write0'
1: from /Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/openssl/buffering.rb:383:in `write_nonblock'
/Users/curquiza/.rvm/rubies/ruby-2.6.6/lib/ruby/2.6.0/openssl/buffering.rb:383:in `syswrite_nonblock': Broken pipe (Errno::EPIPE)I agree the slice of 500000 is useless since the dataset has less than 500 000 documents
Expected behavior
Get the Meilisearch error saying the payload is too large?
Environment (please complete the following information):
- OS: MacOs (not M1)
- MeiliSearch version: v0.26.1
- meilisearch-ruby version: 0.18.2
Metadata
Metadata
Assignees
Labels
bugSomething isn't workingSomething isn't working