-
-
Notifications
You must be signed in to change notification settings - Fork 6.9k
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
Odd condition builder problem in only console application #17090
Comments
Would you please try 2.0.16? |
I've just tried. Same behavior in 2.0.16. |
When I trace the returned array from getColumn(), it's a 1-element array: |
That's weird. Is it reproduceable with starting clean with basic application template? |
I will try it but I have looked at the prod server's bash configuration since the problem only occurs in prod console commands. I think something goes wrong with locale/encoding/line endings.
./yii help also does not recognize command:
./yii help/usage help/usage works properly. ./yii cache/flush works while ./yii cache/index does not. Maybe it is a related situation with the main problem. The "i" letter also exists in "account_ID". Some locale outputs from my console:
|
That is still sounds too weird to reproduce. Unfortunately we can't fix it if it's not reproducible. |
Hi, Regards |
Hi again this is not related to the yii2. this bug is propably from php itself. So you can close it. |
What steps will reproduce the problem?
I have an account settings table which stores key-value paired settings for accounts. It has 3 columns: account_ID, key, value and its primary key is composite (account_ID, key).
I use a db schema cache.
When I try to read account settings, as follows:
, it works as a charm in my dev server (both web and console). In prod server, it works as well in a web controller, however the same call gives an error in a console controller which I call by a shell command.
I don't understand why a console controller in the prod server differs. It's an odd behavior.
Dev server uses MySQL while prod server uses MariaDb. But it still doesn't explain the difference between the web and the console controllers.
Extra note: In SimpleConditionBuilder, getColumn() from ExpressionInterface is put as a parameter to strpos, but getColumn() seems to return mixed, not string.
What is the expected result?
I expect console application works like web application and gives no error.
What do you get instead?
Additional info
The text was updated successfully, but these errors were encountered: