Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

FLUSH RAMCHUNK fails with "Too many open files" (rt_mem_limit 10GB) #2172

Closed
8 tasks done
sanikolaev opened this issue May 14, 2024 · 5 comments
Closed
8 tasks done
Assignees
Labels
bug rel::6.3.0 Released in 6.3.0

Comments

@sanikolaev
Copy link
Collaborator

sanikolaev commented May 14, 2024

Bug Description:

flush ramchunk fails with Too many open files and a loss of the table when rt_mem_limit is 10 gigabytes.

The problem started in one of these 3 commits:
image

MRE

Config:

snikolaev@dev2:~$ cat configless.conf
searchd {
    listen = 9315:mysql
    listen = 9316
    log = searchd.log
    query_log = query.log
    pid_file = searchd.pid
    data_dir = data
    max_packet_size = 128M
}

Initialize the instance:

mkdir data

snikolaev@dev2:~$ searchd -c configless.conf
Manticore 6.2.13 53e7f8ad2@24051318 dev (columnar 2.2.5 0c18998@240424) (secondary 2.2.5 0c18998@240424) (knn 2.2.5 0c18998@240424)

Load data (find the archive in /home/snikolaev/name.sql.tgz on dev2), takes about a minute:

snikolaev@dev2:~$ mysql -P9315 -h0 < name.sql
snikolaev@dev2:~$ mysql -P9315 -h0 -e "flush ramchunk name"
ERROR 1064 (42000) at line 1: table 'name': FLUSH RAMCHUNK failed; TABLE UNUSABLE (error opening 'data/name/name.0.spidx.0.tmp': Too many open files)

The original table is lost:

snikolaev@dev2:~$ mysql -P9315 -h0 -e "show tables"
snikolaev@dev2:~$

Manticore Search Version:

6.2.13 068d2929a@24040513

Operating System Version:

Ubuntu Jammy (dev2)

Have you tried the latest development version?

  • Yes

Internal Checklist:

To be completed by the assignee. Check off tasks that have been completed or are not applicable.

  • Task estimated
  • Specification created, reviewed, and approved
  • Implementation completed
  • Tests developed
  • Documentation updated
  • Documentation proofread
  • Changelog updated
@sanikolaev
Copy link
Collaborator Author

Done in d3e2a27 , but then reverted in fb10b87

@sanikolaev
Copy link
Collaborator Author

Done in 73ed035

@sanikolaev
Copy link
Collaborator Author

Changelog updated

No need as it's a recent issue.

@sanikolaev
Copy link
Collaborator Author

@glookka do we need a test for this functionality?

@glookka
Copy link
Contributor

glookka commented May 17, 2024

@glookka do we need a test for this functionality?

It would be hard to implement in our test suite. I would say we can skip it.

@glookka glookka closed this as completed May 17, 2024
@sanikolaev sanikolaev added rel::6.3.0 Released in 6.3.0 and removed done rel::upcoming Upcoming release labels May 17, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
bug rel::6.3.0 Released in 6.3.0
Projects
None yet
Development

No branches or pull requests

2 participants