-
Notifications
You must be signed in to change notification settings - Fork 304
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
HPCC-33122 Clean up the mechanism for modifying the component config #19362
base: master
Are you sure you want to change the base?
Changes from 8 commits
a054172
5ef4ed3
f9b1dda
4c88a61
f384cc6
d706cc4
849d415
5240339
6aa210e
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
Original file line number | Diff line number | Diff line change |
---|---|---|
|
@@ -246,6 +246,7 @@ class CRoxieDaliHelper : implements IRoxieDaliHelper, public CInterface | |
virtual void beforeDispose() | ||
{ | ||
CriticalBlock b(daliHelperCrit); | ||
|
||
disconnectSem.interrupt(); | ||
connectWatcher.stop(); | ||
if (daliHelper==this) // there is a tiny window where new dalihelper created immediately after final release | ||
|
@@ -805,7 +806,7 @@ class CRoxieDaliHelper : implements IRoxieDaliHelper, public CInterface | |
waitToConnect -= delay; | ||
} | ||
} | ||
initializeStorageGroups(daliHelper->connected()); | ||
initializeStoragePlanes(daliHelper->connected(), false); // This can be called while queries are running - so is not thread safe | ||
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. not new, but it looks like connectToDali is called every time a query dll is loaded, unconditionally, There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Created HPCC-33198 to look at that issue. |
||
return daliHelper; | ||
} | ||
|
||
|
@@ -928,6 +929,7 @@ class CRoxieDaliHelper : implements IRoxieDaliHelper, public CInterface | |
CriticalBlock b(daliConnectionCrit); | ||
if (isConnected) | ||
{ | ||
disableStoragePlanesDaliUpdates(); | ||
isConnected = false; | ||
delete serverStatus; | ||
serverStatus = NULL; | ||
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
trivial: could be an unlinked item, i.e. could be IPropertyTree *storage = newGlobalConfiguration->queryPropTree("storage");
only mentioning, because I looked at the code and the fact it was linked made me wonder if it was necessary for some reason.