-
Notifications
You must be signed in to change notification settings - Fork 378
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
Disable implicit box.cfg{} in sql #4726
Comments
There was a certain reason to add auto box.cfg - interactive SQL console. In the SQL console you can't call |
Maybe there's a way to do implicit |
There is. Just patch console.lua to call box.cfg in case SQL language is active, and it was not called before a first request. |
It is possible now using built-in LUA function:
|
I found the following example today:
|
@igormunkin
Are you want to highlight that we're unable to tune a non-dynamic option after a |
Precisely. |
I don't have an opinion regarding which decision would be better here, but I want to note that it may depend on other activities around box.cfg(). Cited from my email re #4231:
|
Prior to this patch, it was possible to call box.execute() before BOX was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the BOX has been initialized. Closes tarantool#4726 @TarantoolBot document Title: box.execute() now available only after initialization of BOX Previously, it was possible to call box.execute() before the BOX was configured, in which case the BOX was configured automatically, which could lead to problems with BOX parameters. Now box.execute() can only be called after the BOX has been properly configured.
Prior to this patch, it was possible to call box.execute() before BOX was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the BOX has been initialized. Closes tarantool#4726 @TarantoolBot document Title: box.execute() now available only after initialization of BOX Previously, it was possible to call box.execute() before the BOX was configured, in which case the BOX was configured automatically, which could lead to problems with BOX parameters. Now box.execute() can only be called after the BOX has been properly configured. It is also forbidden to set language to SQL in a console with an unconfigured BOX.
Prior to this patch, it was possible to call box.execute() before BOX was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the BOX has been initialized. Closes tarantool#4726 @TarantoolBot document Title: box.execute() now available only after initialization of BOX Previously, it was possible to call box.execute() before the BOX was configured, in which case the BOX was configured automatically, which could lead to problems with BOX parameters. Now box.execute() can only be called after the BOX has been properly configured. It is also forbidden to set language to SQL in a console with an unconfigured BOX.
Prior to this patch, it was possible to call box.execute() before BOX was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the BOX has been initialized. Closes tarantool#4726 @TarantoolBot document Title: box.execute() now available only after initialization of BOX Previously, it was possible to call box.execute() before the BOX was configured, in which case the BOX was configured automatically, which could lead to problems with BOX parameters. Now box.execute() can only be called after the BOX has been properly configured. It is also forbidden to set language to SQL in a console with an unconfigured BOX.
Prior to this patch, it was possible to call box.execute() before box was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the box has been initialized. Closes tarantool#4726 @TarantoolBot document Title: box.execute() now available only after initialization of box Previously, it was possible to call box.execute() before the box was configured, in which case the box was configured automatically, which could lead to problems with box parameters. Now box.execute() can only be called after the box has been properly configured. It is also forbidden to set language to SQL in a console with an unconfigured box.
Prior to this patch, it was possible to call box.execute() before box was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the box has been initialized. Closes tarantool#4726 @TarantoolBot document Title: box.execute() now available only after initialization of box Previously, it was possible to call box.execute() before the box was configured, in which case the box was configured automatically, which could lead to problems with box parameters. Now box.execute() can only be called after the box has been properly configured. It is also forbidden to set language to SQL in a console with an unconfigured box.
Prior to this patch, it was possible to call box.execute() before box was initialized, i.e. before calling box.cfg(). This, however, caused box.cfg() to be called automatically, which could be problematic as some parameters could not be changed after box.cfg() was called. After this patch, box.execute() will only be available when the box has been initialized. Closes #4726 @TarantoolBot document Title: box.execute() now available only after initialization of box Previously, it was possible to call box.execute() before the box was configured, in which case the box was configured automatically, which could lead to problems with box parameters. Now box.execute() can only be called after the box has been properly configured. It is also forbidden to set language to SQL in a console with an unconfigured box.
In #3266 there were added implicit empty
box.cfg{}
tobox.execute
At first, this behavior differs from other functions like
box.select
etc.At second, this could be harmful, because calling empty
box.cfg
will start an instance without replication in readwrite mode, which, in case, could lead to unintended background data modificationI could not see a reason for implicit cfg inside sql and I insist on strict requirement of explicit
box.cfg
frombox.execute
The text was updated successfully, but these errors were encountered: