This repository was archived by the owner on Jul 20, 2023. It is now read-only.
Fix for 'too many tables open' issue on edb#59
Open
cibboy wants to merge 2 commits intobgelens:devfrom
Open
Conversation
Fixes 'too many tables open' issue on edb by preloading table columns in function begin (right after mount and table open) and using them in following loops.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Hi @bgelens,
I may have found a way to fix the "Cannot open any more tables" error for edb files with too many entries (see #58). I admit it is not based on an actual investigation looking for the root cause, but empirical testing.
What I did was basically modify the Get-DSCPullServerESERecord to prevent a lookup of table columns for every entry:
GetTableColumnsto the 'begin' phase, saving the columns in an arrayApparently this solves the immediate issue. I have no idea why this would make a change since, as I said, I haven't figured out the root cause, so there may be unintended side effects. I did a few practical tests and everything seems to be working. If you can run a few tests yourself it would be much appreciated!